Как защитить сервер Linux?
1.Обновление системы
Регулярно обновляйте систему и программное обеспечение:
1 2 |
sudo apt update && sudo apt upgrade -y # Для Debian/Ubuntu sudo yum update -y # Для CentOS/RHEL |
Включите автоматические обновления безопасности.
2.Настройка брандмауэра
Используйте ufw (Uncomplicated Firewall) или firewalld для управления входящими и исходящими соединениями:
1 2 3 4 |
sudo ufw enable sudo ufw allow ssh # Разрешить SSH sudo ufw allow http # Разрешить HTTP sudo ufw allow https # Разрешить HTTPS |
Запретите все неиспользуемые порты.
3.Защита SSH
Измените порт SSH по умолчанию (22):
1 |
sudo nano /etc/ssh/sshd_config |
Измените строку Port 22 на другой порт.
Отключите вход под root:
1 |
PermitRootLogin no |
Используйте аутентификацию по ключу вместо пароля:
1 |
PasswordAuthentication no |
Ограничьте доступ по IP:
1 |
AllowUsers user@your_ip |
4.Управление пользователями и правами
Создавайте отдельных пользователей с ограниченными правами для выполнения задач.
Используйте sudo вместо входа под root.
Регулярно проверяйте список пользователей и удаляйте ненужные учетные записи:
1 |
sudo deluser username |
5.Установка и настройка Fail2Ban
Fail2Ban блокирует IP-адреса после нескольких неудачных попыток входа:
1 2 |
sudo apt install fail2ban # Для Debian/Ubuntu sudo yum install fail2ban # Для CentOS/RHEL |
Настройте конфигурацию для SSH и других сервисов.
6.Отключение ненужных сервисов
Удалите или остановите неиспользуемые сервисы:
1 2 |
sudo systemctl stop service_name sudo systemctl disable service_name |
7.Использование SELinux/AppArmor
Включите SELinux (для CentOS/RHEL) или AppArmor (для Debian/Ubuntu) для усиления безопасности:
1 2 |
sudo setenforce 1 # Для SELinux sudo systemctl enable apparmor # Для AppArmor |
8.Регулярное резервное копирование
Настройте автоматическое резервное копирование важных данных.
Храните резервные копии на отдельном сервере или в облаке.
9.Мониторинг и логирование
Используйте инструменты мониторинга, такие как htop, nmon или Prometheus.
Регулярно проверяйте логи:
1 2 |
sudo tail -f /var/log/auth.log # Логи аутентификации sudo tail -f /var/log/syslog # Системные логи |
10.Шифрование данных
Используйте шифрование дисков (LUKS) для защиты данных.
Настройте SSL/TLS для всех сервисов, работающих с данными.
11.Аудит безопасности
Используйте инструменты для сканирования уязвимостей, такие как Lynis или OpenSCAP:
1 |
sudo lynis audit system |