Запись DDNS заменяется на фактический IP-адрес в цепочке iptables

Запись DDNS заменяется на фактический IP-адрес в цепочке iptables

У меня есть арендованный выделенный сервер, на котором я размещаю определенные сервисы.

Из соображений безопасности я создал цепочку правил, которая будет проверять перечисленные адреса DDNS и подключаться только к тем соединениям, которые соответствуют. Это, похоже, лучше, чем блокировать или принимать по стране.

Бывший.

-A ПРИНЯТЬ_ПЕРСОНАЛЬНЫЙ -s xxx.dns.com -j ПРИНЯТЬ
-A ПРИНЯТЬ_ПЕРСОНАЛЬНЫЙ -s yyy.dns.com -j ПРИНЯТЬ

Некоторое время все работало хорошо, но через несколько дней я внезапно не смог получить доступ к своему серверу. После некоторой поддержки хостинга я смог получить доступ через webmin и обнаружил, что мои адреса DDNS в iptable были заменены на реальные IP, и поскольку они изменились по какой-то причине.

Есть идеи, что случилось? Я проверил задания cron, особенно еженедельные, но ничего подозрительного не нашел.

Также я использую Webmin для установки значений.

решение1

Разрешение DNS происходит до загрузки правила брандмауэра в ядро, поэтому вы не сможете сделать то, что хотите, с помощью iptables.

решение2

Вы упомянули, что проверяете по перечисленным адресам DDNS. Много раз я видел, что эти списки не надежны на 100%. Мой собственный статический IP в некоторых списках классифицируется как динамический. Так что, возможно, публичный IP, с которого вы пытались получить доступ к своей машине, также попал в список DDNS. Если вы пытаетесь защитить свою систему от атак SSH, я бы предложил подумать, какDenyHosts

решение3

Как сказал womble, iptables делает разрешение имен, когда правила загружены. Вы можете захотеть управлять доступом, используя hosts.allow, например

sshd: xxx.dns.com
sshd: yyy.dns.com

Вы также можете управлять доступом с помощью «AllowUsers» в sshd_config. Любой из этих методов будет искать ваш адрес во время подключения.

решение4

fail2banотлично сработало для меня на моем виртуальном сервере. Его можно настроить для работы с несколькими службами, ssh, ftp и т. д. В настоящее время я использую его для блокировки попыток подбора пароля на SSH и FTPS. Он автоматически забанит IP на определенный период времени с помощью iptables после X неудачных попыток входа на ваш сервер.

Связанный контент