Настройки безопасности linux
Restricted user и ограничение прав
Заходить по дефолту из под root не безопасно, поэтому нужно создать пользователя с ограниченными правами и, если есть надобность, добавить его в sudo group.
Установка срока истечения пароля тоже поможет повысить безопасность системы, поэтому делаем👇:
Ограничение прав:
chmod 700 /root
- полные права только владельцу каталога /root, чтобы предотвратить доступ посторонних пользователей.
chmod -R 700 /etc/skel
- (рекурсивно) ограниченные права доступа по дефолту для всех новых юзеров, создаваемых на основе этого шаблона, чтобы предотвратить доступ других лиц к личным данным юзеров.
chmod 600 /etc/rsyslog.conf
- права чтения и записи конфигурационного файла системного журнала только владельцу (обычная защита от изменений).
chmod 640 /etc/security/access.conf
- доступ к файлу настроек SELinux только юзеру root.
chmod 600 /etc/sysctl.conf
- тоже предотвращение ненужных изменений параметров ядра.
Автоматические обновления
Обновления нужны, в том числе, для исправления багов и уязвимостей, если речь о ИБ. Но на серверах могут возникнуть сбои во время обновления, поэтому лучше автоматически устанавливать только обновления безопасности.
Есть пакет unattended upgrades для настройки автоматических обновлений (для debian-based dists).
Установка и конфигурация:
Fail2ban
Fail2ban позволяет блокировать IP-адреса, с которых предпринимаются множественные неудачные попытки подключения по SSH.
Установка и конфигурация:
sshd_config
Образец:
Include /etc/ssh/sshd_config.d/*.conf
Port 2886
ListenAddress 0.0.0.0
ListenAddress ::
HostKey /etc/ssh/ssh_host_rsa_key
Protocol 2
SyslogFacility AUTH
LogLevel INFO
PermitRootLogin no
PubkeyAuthentication yes
PasswordAuthentication no
PermitEmptyPasswords no
ChallengeResponseAuthentication no
KbdInteractiveAuthentication no
UsePAM no
X11Forwarding no
PrintMotd yes
AcceptEnv LANG LC_*
Subsystem sftp /usr/lib/openssh/sftp-server
ufw
Важно помнить простое правило: все, что не разрешено - должно быть запрещено. Иными словами, открыты только порты для используемых сервисов, все остальные должны быть закрыты.
Установка и конфигурация: