Предуслови
Корак 1: Ажурирајте систем
Корак 2: Измените ССХ порт (опционо)
Корак 3: Инсталирајте и конфигуришите фаил2бан да заштитите ССХ
Фаил2бан, као што му име каже, је услужни програм дизајниран да помогне у заштити Линук машина од напада грубом силом на одабране отворене портове, посебно на ССХ порт. Због функционалности система и управљања, ови портови се не могу затворити помоћу заштитног зида. Под овим околностима, добра је идеја користити Фаил2бан као додатну безбедносну меру заштитном зиду да бисте ограничили саобраћај грубог напада на ове портове.
У овом чланку ћу вам показати како да инсталирате и конфигуришете Фаил2бан да заштитите ССХ порт, најчешћи циљ напада, на Вултр Дебиан 9 серверској инстанци.
Предуслови
- Нова Дебиан 9 (Стретцх) к64 инстанца сервера.
- Пријављен као
root.
- Сви неискоришћени портови су блокирани одговарајућим ИПТаблес правилима.
Корак 1: Ажурирајте систем
apt update && apt upgrade -y
shutdown -r now
Након што се систем покрене, поново се пријавите као root.
Корак 2: Измените ССХ порт (опционо)
Пошто је подразумевани број ССХ порта 22превише популаран да би се игнорисао, промена у мање познати број порта, рецимо, 38752била би паметна одлука.
sed -i "s/#Port 22/Port 38752/g" /etc/ssh/sshd_config
systemctl restart sshd.service
Након модификације, потребно је да ажурирате ИПТаблес правила у складу са тим:
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -A INPUT -p tcp --dport 38752 -j ACCEPT
Сачувајте ажурирана правила ИПТаблес у датотеци ради постојаности:
iptables-save > /etc/iptables.up.rules
touch /etc/network/if-pre-up.d/iptables
chmod +x /etc/network/if-pre-up.d/iptables
echo '#!/bin/sh' >> /etc/network/if-pre-up.d/iptables
echo '/sbin/iptables-restore < /etc/iptables.up.rules' >> /etc/network/if-pre-up.d/iptables
На овај начин, ИПТаблес правила ће бити упорна чак и након поновног покретања система. Од сада, мораћете да се пријавите са 38752порта.
Користите aptда инсталирате стабилну верзију Фаил2бан која је тренутно 0.9.x:
apt install fail2ban -y
Након инсталације, услуга Фаил2бан ће се аутоматски покренути. Можете користити следећу команду да прикажете њен статус:
service fail2ban status
На Дебиан-у, подразумеване поставке филтера Фаил2бан биће ускладиштене и у /etc/fail2ban/jail.confдатотеци и у /etc/fail2ban/jail.d/defaults-debian.confдатотеци. Запамтите да ће подешавања у другој датотеци заменити одговарајућа подешавања у претходној.
Користите следеће команде да видите више детаља:
cat /etc/fail2ban/jail.conf | less
cat /etc/fail2ban/jail.d/defaults-debian.conf
fail2ban-client status
fail2ban-client status sshd
За вашу информацију, исечци кода о ССХ-у су наведени у наставку:
у /etc/fail2ban/jail.conf:
[DEFAULT]
bantime = 600
...
maxentry = 5
[sshd]
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
у /etc/fail2ban/jail.d/defaults-debian.conf:
[sshd]
enabled = true
Пошто се садржај у две конфигурационе датотеке изнад може променити у будућим ажурирањима система, требало би да креирате локалну конфигурациону датотеку за чување сопствених правила филтера фаил2бан. Опет, подешавања у овој датотеци ће заменити одговарајућа подешавања у две горе поменуте датотеке.
vi /etc/fail2ban/jail.d/jail-debian.local
Унесите следеће редове:
[sshd]
port = 38752
maxentry = 3
Напомена: Обавезно користите сопствени ССХ порт. Осим portи maxentryгоре наведеног, сва друга подешавања ће користити дефаулт вредности.
Сачувај и затвори:
:wq
Поново покрените услугу Фаил2бан да бисте учитали нову конфигурацију:
service fail2ban restart
Наше подешавање је завршено. Од сада, ако било која машина пошаље нетачне ССХ акредитиве на прилагођени ССХ порт Дебиан сервера ( 38752) више од три пута, ИП ове потенцијално злонамерне машине ће бити забрањена на 600 секунди.