Home / Port knocking in Ubuntu

Port knocking in Ubuntu


Port knocking în Ubuntu

Conceptul

Pentru administrarea de la distanţă în regim consolă a unui sistem Ubuntu, este necesar ca portul aferent serviciului SSH (portul 22 în mod tipic) să fie deschis către Internet, ceea ce aduce cu sine riscuri nedorite (vulnerabilitate la atacuri automatizate / botnets). Pentru a reduce aceste riscuri, se poate folosi o tehnică numită "port knocking" astfel încât portul SSH să rămână închis majoritatea timpului şi pentru majoritatea adreselor IP de pe Internet. Portul se va deschide numai la cerere şi numai pentru adresa de IP care a "bătut la uşă" secvenţa corectă de porturi în modul descris mai jos. Această secvenţă corectă poate fi configurată în fişierul de configurare aferent utilitarului knockd.

Instalarea pachetelor necesare

Este necesar pachetul knockd, care poate fi găsit în Ubuntu repo, deci se poate instala în mod obişnuit cu synaptic, adept, din terminal sau direct din browser.

sudo aptitude install knockd

Knockd nu porneşte în mod automat. Pentru a realiza acest lucru trebuie înlocuită cifra 0 cu cifra 1 în fişierul /etc/default/knockd în acest mod:

START_KNOCKD=1

Configurarea

Datele de configurare pentru knockd se află în fişierul /etc/knockd.conf. Se deschide la cerere portul SSH (portul 22) "bătând la uşă" cu combinaţia 7000 8000 9000; portul se închide la loc cu 9000 8000 7000. Important: se recomandă a nu se reutiliza exact această secvenţă de porturi în practică. De asemenea, se recomandă a nu se utiliza portul 22 pentru serverul de SSH. Exemplul de faţă are doar caracter ilustrativ.

[options]
logfile = /var/log/knockd.log
[openSSH]
sequence = 7000,8000,9000
seq_timeout = 10
command = iptables -I INPUT -s %IP% -p tcp --dport 22 --syn -j ACCEPT
tcpflags = syn
[closeSSH]
sequence = 9000,8000,7000
seq_timeout = 10
command = iptables -D INPUT -s %IP% -p tcp --dport 22 --syn -j ACCEPT
tcpflags = syn

Utilizarea

Pentru a "bate la uşă" se poate folosi utilitarul knock (care este instalat împreună cu knockd) sau netcat (în mod zero-I/O):

knock -v 192.168.1.2 7000 8000 9000
nc -z 192.168.1.2 7000 8000 9000

Surse de inspiraţie şi referinţe

https://help.ubuntu.com/community/PortKnocking

http://www.gentoo-wiki.info/HOWTO_Port_Knocking

http://portknocking.org/

Feedback

http://forum.ubuntu.ro/viewtopic.php?id=5560




     RSS of this page