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…

12 месяцев ago

vCenter Converter Standalone download

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

1 год 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