Используйте этот сценарий iptables для безопасности веб-сервера / почтового сервера
Безопасность. Ах, безопасность. Это решение для администраторов на многих уровнях. Для операционной системы Linux вы можете пойти по многим направлениям с вашей безопасностью. Вы можете перейти на графический интерфейс и упростить жизнь, но при этом потеряете некоторую гибкость. Или вы можете пойти по более сложному маршруту и использовать командную строку iptables. Я скажу, что инструменты с графическим интерфейсом прошли долгий путь, но в некоторых случаях простота использования предложения мешает детальной настройке безопасности вашего сервера / сети.
Когда вы тратите много времени на создание и администрирование комбинации веб-сервера и почтового сервера, всегда полезно иметь решение, которое легко внедрить. Я нашел тот, которым пользовался некоторое время, и доверяю его безопасности и простоте использования. Эта «система» использует довольно сложный скрипт iptables, который имеет всего одну строку, которую вам нужно будет изменить, чтобы обеспечить надежную безопасность для веб-сервера / почтового сервера, который обслуживает веб-страницы через Apache на порту 80 и почту через SMTP на порту. 25 и IMAP через порт 143. В этот сценарий включен порт 25 для безопасного доступа к оболочке.
Вы удивитесь, насколько просто использовать этот скрипт. Я загрузил скрипт на сайт pastebin, к которому вы можете получить доступ, используя этот адрес. Скопируйте этот сценарий на свой Linux-сервер (для простоты сохраните его в ~ / скрипты , который вы создадите), и вы готовы к настройке системы.
Конфигурация
Единственная строка, которую вам нужно настроить (если вам не нужно изменить имя сетевого устройства и / или вы хотите включить дополнительные порты или удалить порты из сценария), — это строка 8. Эта строка выглядит так:
SCRIPT_DIR = «/ ПУТЬ / К / КАТАЛОГ»
Что вы хотите, так это место, которое будет заполнено любым IP-адресом, заблокированным брандмауэром. Для целей этого руководства он будет сохранен в ~ / скрипты .
После того, как вы отредактировали это, вы можете сохранить файл и назвать его start_iptables.sh. Теперь дайте исполняемому файлу разрешение с помощью команды:
chmod u + x start_iptables.sh
Теперь создайте новый файл с именем stop_iptables.sh. Содержимое этого файла будет:
iptables -F
iptables -X
iptables -t нат -F
iptables -t нат -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P ВВОД ПРИНЯТЬ
iptables -P ПРИНЯТЬ ВЫВОД
iptables -P ПРИНЯТЬ ВПЕРЕД
Сделайте этот файл исполняемым с помощью команды:
chmod u + x stop_iptables.sh
Первый сценарий запустит ваш брандмауэр, второй остановит его.
Запуск этого скрипта
Вы можете запускать и останавливать этот скрипт в любое время с помощью команды:
sudo ~ / scripts / start_iptables.sh
Если ошибок нет, вы должны увидеть что-то вроде:
Запуск IPv4 Wall …
Вы также можете проверить это, перечислив все свои цепочки iptables с помощью команды:
sudo iptables -L
Остановка брандмауэра выполняется командой:
sudo ~ / scripts / stop_iptables.sh
Начать при загрузке
Теперь сделаем так, чтобы скрипт межсетевого экрана запускался при загрузке сервера (если возникнет такая необходимость). Откройте /etc/rc.local файл и добавьте строку:
/PATH/TO/scripts/start_iptables.sh
перед строкой «exit 0».
Где / PATH / TO / — это явный путь к ~ / скрипты каталог (вы не можете использовать «~ /» в rc.local).
Теперь сценарий запускается при загрузке.
Вывод
Этот простой в установке брандмауэр добавит уровень безопасности вашему веб-серверу или почтовому серверу, который было бы трудно получить с помощью инструмента с графическим интерфейсом. И если вы используете безголовый (только консольный) сервер, это единственный выход.