Безопасность удаленного сервера: iptables: дать 4 минуты?

Удаленный сервер :

Я хочу настроить iptables для блокировки всего входящего трафика ..

НО .. через 4 минуты после полного запуска системы

таким образом я могу 4 минуты на SSH и подключить к нему
прежде чем я заблокируюсь.

Лучший способ достичь (сделать) это?

Шаг 1 , вероятно, следующий:

 chkconfig iptables off

Что такое Шаг 2 ?

-1
17.02.2017, 10:40
2 ответа

С точки зрения безопасности лучше установить брандмауэр еще до запуска каких-либо приложений.

Поэтому вам, вероятно, лучше использовать knockd . Таким образом, вы можете настроить последовательность стука портов, которая открывает порт ssh и закрывает его через определенное время.

Пример конфигурации может быть:

/etc/knockd.conf
[options]
    logfile = /var/log/knockd.log

[opencloseSSH]
                   sequence      = 8081,8082,8083
                   seq_timeout   = 5
                   tcpflags      = syn
                   start_command = /usr/sbin/iptables -I IN_external_allow -i enp0s8 -s %IP% -p tcp --dport 22 -j ACCEPT
                   cmd_timeout   = 15
                   stop_command  = /usr/sbin/iptables -D IN_external_allow -i enp0s8 -s %IP% -p tcp --dport 22 -j ACCEPT

Если вы хотите войти, вы можете использовать что-то вроде:

nc -w 1 myhost 8081
nc -w 1 myhost 8082
nc -w 1 myhost 8083
ssh user@myhost

Нет необходимости иметь прослушиватели для упомянутых портов, поскольку мы проверяем только на syn пакеты. Однако необходимо, чтобы порты были открыты на внешнем брандмауэре, чтобы пакеты могли достигать вашего хоста. Вы также можете использовать более распространенные порты, такие как 80,25,443, которые, скорее всего, уже открыты.

Эта последовательность должна быть завершена в течение 5 секунд в соответствии с конфигурацией, и через 15 секунд порт снова закроется. Существующие сеансы останутся открытыми, так что это безопасно.

См. Также http://www.zeroflux.org/projects/knock для получения подробной информации о том, как это настроить.

0
28.01.2020, 05:08

Вы можете создать сценарий, который запускается при запуске системы, чтобы она сначала спала в течение 4 минут, а затем выполняла нужную инструкцию iptables.

Что-то вроде:

#!/bin/bash
/etc/init.d/iptables stop
sleep 4m
/etc/init.d/iptables start
iptables -P INPUT DROP

Чтобы запустить его при запуске системы, скопируйте сценарий с соответствующими разрешениями ( chmod + x yourscript.sh ) в /etc/init.d и обновите свой rc, например:

update-rc.d yourscript.sh defaults 100
3
28.01.2020, 05:08

Теги

Похожие вопросы