В данной статье речь пойдет о том, как можно немного улучшить безопасность вашего сервера.
Если ваши проекты размещены на серверах общего хостинга – вам не о чем переживать. Там все давно установлено, настроено и сконфигурировано. Да особо развернуться в плане настройки и конфигурирования сервера вам не дадут.
Совсем другое дело на VPS. В большинстве случаев вам дадут сервер в минимальной конфигурации да и с платной донастройкой.
Со стороны безопасности предлагаю обзавестись фаерволом да «сканером» вредоносных программ.
Как установить csf на CentOS 6/7.
И будет это csf. Работает на базе iptables, имеет в комплекте lfd.
Процесс установки ничего сложного не представляет. Просто по очереди выполняем:
cd /usr/local/src/
wget http://www.configserver.com/free/csf.tgz
tar -xzf csf.tgz
cd csf
sh install.sh
Далее запускаем скрипт на проверку необходимых модулей iptables
perl /etc/csf/csftest.pl
Далее открываем конфигурационный файл /etc/csf/csf.conf и меняем :
TESTING = «1» на TESTING = «0»
UDP_OUT = «20,21,53,113,123» на UDP_OUT = «20,21,53,113,123,33434:33523»
Добавляем а автозагрузку
chkconfig csf on
Запускаем
csf —s
Если нужно отключить :
csf —x
Включаем:
csf —e
Работа с фаерволом:
csf —g IP — поиск существующих правил по IP (в основном нужно для проверки того, не блокируется ли указанный IP)
csf —d IP— заблокировать соединения с данного IP (внести его в черный список)
csf —dr IP или csf —tr IP — разблокировать IP в зависимости от типа блокировки.
csf —a IP — добавить IP в белый список.
csf —ar IP — убрать IP из белого списка.
Для защиты от SYN_FLOOD в /etc/csf/csf.conf должны быть настроены соответствующим образом опции SYNFLOOD и SYNFLOOD_RATE
Зачастую ddos-атаки идут именно на 80-й порт. Во время «неприятностей» — открываем /etc/csf/csf.conf, ищем PORTFLOOD и устанавливаем:
PORTFLOOD = «80;tcp;20;300» — данное правило будет блокировать IP за более чем 20 соединений на 80-й порт на протяжении 300-т секунд. Если нужно защитить другой порт – соответственно меняем 80 на другое значение. Если нужно добавить несколько правил, после указанного ставим запятую (в данном случае после «300» и добавляем новое правило. Например — PORTFLOOD = «80;tcp;20;300,25;tcp;20;300,3306;tcp;20;300«
Далее установим демон для обнаружения вредоносных скриптов — maldet
Тут процесс установки так же прост.
Просто выполняем по очереди
cd /usr/local/src/
wget http://www.rfxn.com/downloads/maldetect-current.tar.gz
tar -xzf maldetect-current.tar.gz
cd maldetect-*
sh ./install.sh
maldet —update-ver
maldet —update
Конфигурационный файл — /usr/local/maldetect/conf.maldet
Что бы запустить сканирование вводим
maldet —a путь_к_папке – например, maldet -a /home/user/
После завершения сканирования видим что-то типа
maldet(24128): {scan} scan completed on /home/user/: files 7163, malware hits 5, cleaned hits 0
maldet(24128): {scan} scan report saved, to view run: maldet —report 191210-1625.22168
Соответственно, для просмотра отчета запускаем
maldet —report 191210-1625.22168
Поместить файлы в карантин
maldet —q 191210-1625.22168
Удалить обнаруженные файлы
maldet —n 191210-1625.22168
На этом все. Вопросы/пожелания/замечания выслушаем в комментариях.