Как защитить Linux-сервер: чеклист базовой безопасности
Даже простой Linux-сервер без должной настройки уязвим к атакам. Базовая защита включает в себя настройку аутентификации, обновления системы, файрвол и мониторинг. Ниже представлен пошаговый чеклист, который поможет минимизировать риски.
Регулярное обновление системы
Всегда устанавливайте обновления безопасности:
sudo apt update && sudo apt upgrade -y # Debian/Ubuntu
sudo yum update -y # CentOS/RHEL
sudo dnf upgrade --refresh # Fedora
Настройте автообновления для критических патчей. О том, как настроить автоматические обновления, рассказано в одной из статей нашего блога.
Управление пользователями
- Создайте отдельного администратора с sudo-доступом вместо root.
- Используйте сильные пароли или SSH-ключи.
- Ограничьте возможность входа по root через SSH:
PermitRootLogin no
в /etc/ssh/sshd_config
.
SSH и аутентификация
- Используйте SSH-ключи вместо пароля.
- Измените стандартный порт SSH (например, с 22 на другой).
- Включите двухфакторную аутентификацию при возможности.
- Используйте fail2ban или аналогичные сервисы для блокировки подозрительных попыток входа:
sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Файрвол и сетевые ограничения
- Настройте firewall (ufw, firewalld, iptables).
- Закрывайте все ненужные порты.
- Ограничьте доступ по IP для административных сервисов.
Мониторинг и логирование
- Следите за логами:
/var/log/auth.log
,/var/log/syslog
- Настройте alert-систему или мониторинг (например, Zabbix, Prometheus) для своевременного реагирования на подозрительные события.
- Периодически проверяйте активные соединения:
ss -tulwn
Настройка прав доступа и файловой системы
- Минимизируйте права пользователей на файлы и каталоги.
- Используйте
chmod
иchown
для ограничения доступа. - Запускайте сервисы под ограниченными пользователями, а не под root.
Защита от вирусов и malware
- Установите антивирус ClamAV:
sudo apt install clamav clamav-daemon
sudo freshclam # обновление баз
- Проверка директорий на наличие вирусов:
sudo clamscan -r /home
sudo clamscan -r /var/www
- Проверка на руткиты:
sudo apt install rkhunter chkrootkit
sudo rkhunter --check
sudo chkrootkit
- Настройте регулярное сканирование через cron для автоматизации.
Безопасность приложений
- Поддерживайте все установленные сервисы в актуальном состоянии (Apache, Nginx, базы данных).
- Удаляйте неиспользуемые пакеты и сервисы.
- Ограничивайте доступ к административным панелям по IP.
Дополнительные рекомендации
- Используйте SELinux или AppArmor для ограничения возможностей процессов.
- Включите логирование аудита (
auditd
) для критичных действий. - Делайте регулярные бэкапы конфигураций и данных.
Заключение
Базовая безопасность Linux-сервера — это регулярные обновления, надёжная аутентификация, правильные права доступа, файрвол, мониторинг и проверка на вирусы/руткиты.
Следуя этому расширенному чеклисту, вы значительно уменьшите риски взлома, утечки данных и других угроз.
Настроить мониторинг за 30 секунд
Надежные оповещения о даунтаймах. Без ложных срабатываний