Я использую OpenWrt на своем роутере и мне это нравится. У меня вопрос, как мне заблокировать все китайские адреса от подключения к брандмауэру через порт 22 в роутере? 99,9999% несанкционированных SSH-соединений приходят оттуда.

/K

3 ответа3

2

Я не уверен, стоит ли блокировать IP-адреса целой страны, особенно страны с огромным количеством IP-адресов, например, Китая. Это замедлит работу вашего брандмауэра, и все же это не так эффективно. Если вы настаиваете, вот список IP-адресов, принадлежащих Китаю. Лучший способ защитить ваш ssh-сервер -

  1. Измените номер порта ssh на более высокий номер порта
  2. Установите такие инструменты, как fail2ban , который блокирует IP-адрес после нескольких неудачных попыток входа в систему.
  3. Используйте аутентификацию с закрытым / открытым ключом.

Вы можете найти этот учебник полезным.

0

Так же, как вы бы заблокировать кого-либо еще. Конечно, вам нужен список китайских IP-блоков. Вы можете получить их, например, здесь: http://www.nirsoft.net/countryip/cn.html

Затем вам нужно преобразовать его в формат iptables (если в списке уже нет этого формата).

Точная процедура зависит от используемого вами брандмауэра. Но в целом вы создадите новую цепочку ssh и отправите туда все доступы к порту 22. Если у вас есть файл, содержащий адреса в формате iptables (1.2.3.4/24), вы можете использовать команду оболочки

while read network; do
  iptables -A ssh -s "$network" -j DROP
done < china-networks.txt
iptables -A ssh -j ACCEPT

Это можно оптимизировать, приняв, что вы убили несколько адресов за пределами Китая, и объединив небольшие сети в более крупные сети, тем самым уменьшив количество проверяемых правил. Это можно сделать из /etc/firewall.user в случае брандмауэра UCI.

0

Используйте ipset для больших списков IP-адресов для сравнения.

Создать набор:

ipset -N myset iphash
while read network; do
  ipset -A myset ${network}
done < china-networks.txt

Отбрасывание трафика:

iptables -A INPUT -m set --set myset src -j DROP

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .