Правило Iptables для удаленного доступа к серверу через DHCP

Извините, что задал этот вопрос, но я просматривал форумы и темы по этому вопросу и, похоже, путаю себя больше, чем на самом деле получить какую-либо ясность. Все, что мне нужно, это короткий и краткий ответ на эту проблему:

Как настроить правило (цепочки) в iptables, которое отклоняет любой источник, который не может получить доступ к серверу после попыток XX в течение YY минут, так что любая дальнейшая попытка связаться с сервером будет отклонена до того, как пароль будет сопоставлен для минут ZZ. После ZZ минут после последней попытки подключения правило должно позволить тому же источнику повторить попытку, как если бы он никогда не пытался повторно подключиться раньше.

  • Я предполагаю, что это должно быть записано как новое правило цепи.
  • Я предполагаю, что правило цепи должно быть сохранено в iptables, так что правило возобновляется при перезагрузке.
  • Я предполагаю, что для правила цепи требуется какой-то журнал.

Моя проблема в том, что я не понимаю синтаксис iptables , не учитывая, насколько я его изучаю, и, следовательно, я благодарен за самый короткий " сценарий типа "ответ на этот вопрос

0
задан 19 December 2011 в 03:03

1 ответ

Ну, честно говоря, есть немного кривой обучения для iptables.

Во-первых, вы можете использовать ufw для запуска. ubw - мощный инструмент командной строки, и преимущество в том, что синтаксис похож на iptables.

sudo ufw enable
sudo ufw limit 22

Здесь я ограничиваю порт 22, вы можете использовать любой желаемый порт.

https://help.ubuntu.com/11.10/serverguide/C/firewall.html

Опять же, преимущество ufw будет автоматизировать большую часть этого и облегчить ваш процесс обучения.

If вы хотите использовать iptables, вам как минимум нужно научиться сохранять и восстанавливать свои правила.

sudo iptables-save > /etc/iptables.save
sudo iptables-restore /etc/iptables.save

Вы можете отредактировать /etc/iptables.save, синтаксис достаточно прост.

[d8 ] При попытке использования правил с удаленного устройства используйте iptables-apply, чтобы предотвратить блокировку

sudo iptables-apply /etc/iptables.save

. Чтобы восстановить правила при загрузке, одним из нескольких способов является добавление этого параметра в /etc/rc.local[!d9 ]

iptables-restore /etc/iptables.save

Другие параметры, перечисленные в вики-странице Ubuntu iptables (см. ниже).

Синтаксис iptables -

iptables -I INPUT -p tcp -m state --state NEW -m limit --limit 30/minute --limit-burst 5 -j ACCEPT

В LOG, добавьте LOG, но если вы не будете следить за своими журналами, используйте snort. logging iptables, IMO, более полезен для отладки.

См. man iptables, https://help.ubuntu.com/11.10/serverguide/C/firewall.html

Некоторые люди находят, что моя веб-страница iptables помогает начать.

Чтобы ответить на ваш комментарий, см. эти правила

iptables -A INPUT -p tcp -m tcp --dport 22 -m tcp -m state --state NEW -m recent --set --name SSH --rsource

iptables -A INPUT -p tcp -m tcp --dport 22 -m recent --update --seconds 600 --hitcount 8 --rttl --name SSH --rsource -j DROP

iptables -A INPUT -p tcp -m tcp --dport 22 -j ACCEPT

my iptables веб-страница

Предостережение - это зависит от службы. ssh настроен так, чтобы разрешить так много попыток аутентификации пароля 9see /etc/ssh/sshd_config), поэтому каждое соединение дает 6 попыток пароля.

1
ответ дан 25 May 2018 в 15:50
  • 1
    Спасибо за ваши материалы - особенно ссылку на ваш блог - я еще не полностью уверен :-) Когда я перевел свой собственный вопрос («Как настроить правило цепи в iptables ...»), я пропустил следующее: : - $ iptables -I INPUT -p tcp -m state -state NEW -m limit -limit 30 / minute -limit -burst 5 -j ПРИНИМАЕТ Здесь я предполагаю, что попытки XX = "взрыв 5". Но есть «- ограничение 30 минут» так же, как «YY минут». т.е. контролируемое временное окно? И я не могу понять, как «ZZ minutes» то есть время штрафа за невозможность действительного соединения, присутствует? – root-11 21 December 2011 в 23:53
  • 2
    В ответе есть ошибка, --limit -burst - --limit-burst. Я нашел чертеж в Packet Filtering HOWTO самой четкой визуализации того, как работает предельный модуль. – Lekensteyn 22 December 2011 в 00:22
  • 3
    Сделали немного больше домашней работы, и решение не выполняет эту работу. Я добавил свою проблему здесь paste.ubuntu.com/785667 в надежде на лучшую идею. – root-11 28 December 2011 в 19:12

Другие вопросы по тегам:

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