Categories: linuxubuntu

заблокировать ssh с помощью iptables

Самым простым решением будет изменить стандартный порт SSH с 22 на другой.  Для этого в файле конфигурации sshd (обычно /etc/ssh/sshd_config) нужно прописать Port номер_порта. К тому же, это может быть полезно, если вы захотите попасть на свой компьютер через какого-то странного провайдера или “злого” админа на работе блокирующего “левые” порты. Например, ssh можно повесить на 80-ый порт..

Как заблокировать перебор пароляiptables -A INPUT -i eth0 -p tcp —dport 22 -m state —state NEW -m recent —set —name SSH;iptables -A INPUT -i eth0 -p tcp —dport 22 -m state —state NEW -m recent —update —seconds 60 —hitcount 8 —rttl —name SSH -j DROP

-i eth0 — это сетевой интерфейс.

Возможно, вам нужно будет изменить:
–dport22 на номер порта где крутится ваш SSH демон;
–seconds 60 — это период, в течении которого будут считаться подключения;
–hitcount 8 — это количество попыток;

Таким образом этими правилами мы установили ограничение: не более 8 подключений по SSH в минуту.

Восстановление после перезагрузки
Что бы правила восстанавливались после перезагрузки нужно выполнять их после запуска сети. Простым и элегантным решением будет делать это автоматически.
Для этого создайте /etc/network/if-up.d/bfa-protection:

#!/bin/bash
[ «${METHOD}» != loopback ] exit 0
/sbin/iptables -A INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –set –name SSH
/sbin/iptables -A INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –update –seconds 60 –hitcount 8 –rttl –name SSH -j
DROP

Разумеется, не забудьте изменить параметры, если это необходимо.

Сохранив этот файл сделайте его исполняемым:
chmod u x /etc/network/if-up.d/bfa_protection

Теперь каждый раз когда интерфейс будет активирован — правила будут установлены.

Удаление правил при отключении интерфейса
/etc/network/if-down.d/bfa_protection :

#!/bin/bash
[ «${METHOD}» != loopback ] exit 0
/sbin/iptables -D INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –set –name SSH
/sbin/iptables -D INPUT -i eth0 -p tcp –dport 22 -m state –state NEW -m recent –update –seconds 60 –hitcount 8 –rttl –name SSH -j DROP

и делаем исполняемым —  chmod u x /etc/network/if-down.d/bfa_protection

admin

Recent Posts

How to back up and restore the ESXi host configuration

Original https://kb.vmware.com/s/article/2042141 Backing up ESXi host configuration data To synchronize the configuration changed with persistent…

11 месяцев ago

vCenter Converter Standalone download

vCenter Converter Standalone 6.6.0 download (далее…)

12 месяцев ago

VMware remote console (VMRC) 12 download

VMware remote console (VMRC) 12.0.5 download Last version: VMware Remote Console 12.0.5  28 NOV 2023…

2 года ago

Mysql calculate row size for all tables

SELECT col_sizes.TABLE_SCHEMA, col_sizes.TABLE_NAME, SUM(col_sizes.col_size) AS EST_MAX_ROW_SIZE FROM ( SELECT cols.TABLE_SCHEMA, cols.TABLE_NAME, cols.COLUMN_NAME, CASE cols.DATA_TYPE WHEN…

2 года ago

Mysql change date format in database

UPDATE DB SET column = DATE(STR_TO_DATE(column, '%Y-%d-%m')) WHERE DATE(STR_TO_DATE(column, '%d-%m-%Y')) <> '0000-00-00'

2 года ago

esxi debian lvm extend partition

echo 1 > /sys/class/block/sda/device/rescan #maybe run under root> sudo fdisk /dev/sda2 > d > 2…

2 года ago