LINUXPEDIA / TUTORIAL

Cum securizezi porturile pe Linux: Ghid complet și practic

Publicat:

Află cum să securizezi porturile pe Linux pentru a proteja serverul tău de atacuri cibernetice. Ghid complet cu metode eficiente și comenzi utile.

Introducere în securizarea porturilor pe Linux

Porturile reprezintă punctele de acces prin care serviciile de pe un sistem Linux comunică cu exteriorul. Din păcate, porturile deschise pot deveni o poartă de intrare pentru atacatori dacă nu sunt gestionate corect. În acest articol, vei învăța cum să securizezi porturile pe Linux, folosind un set de metode și instrumente practice care îți vor proteja serverul de accesul neautorizat.

De ce este importantă securizarea porturilor?

Fiecare port deschis pe serverul tău poate expune un serviciu care poate avea vulnerabilități. Atacatorii scanează adesea porturile pentru a identifica servicii vulnerabile pe care să le exploateze. Prin urmare, reducerea numărului de porturi deschise și monitorizarea accesului sunt esențiale pentru protecția sistemului.

Pași esențiali pentru securizarea porturilor pe Linux

1. Identificarea porturilor deschise

Primul pas este să știi ce porturi sunt deschise și ce servicii ascultă pe ele. Pentru aceasta, poți folosi comanda ss sau netstat:
sudo ss -tuln
Explicație:
  • -t - arată conexiunile TCP
  • -u - arată conexiunile UDP
  • -l - afișează porturile pe care serviciile ascultă
  • -n - afișează adresele și porturile numeric, fără rezoluție de nume
Alternativ, poți folosi:
sudo netstat -tulnp
Unde -p arată procesul care ascultă pe port.

2. Închiderea porturilor neutilizate

După ce ai identificat porturile deschise, închide serviciile care nu sunt necesare. De exemplu, pentru a opri un serviciu, folosește:
sudo systemctl stop nume_serviciu
sudo systemctl disable nume_serviciu
Acest lucru oprește și dezactivează serviciul la pornire, astfel încât portul asociat să nu mai fie deschis.

3. Folosirea unui firewall

Firewall-ul este cea mai eficientă metodă pentru a controla accesul la porturile de pe server. Pe Linux, cele mai populare unelte sunt iptables și firewalld. Pentru utilizatorii mai noi, ufw (Uncomplicated Firewall) este o unealtă simplă și eficientă.

Configurarea UFW

1. Activează UFW:
sudo ufw enable
2. Verifică regulile existente:
sudo ufw status verbose
3. Permite doar porturile necesare, de exemplu SSH pe portul 22:
sudo ufw allow 22/tcp
4. Blochează toate celelalte porturi implicit (UFW blochează traficul de intrare nepermis):
sudo ufw default deny incoming
sudo ufw default allow outgoing
Aceste reguli se asigură că doar traficul permis ajunge la server, iar restul porturilor sunt blocate.

Configurarea iptables

Dacă preferi iptables, iată un exemplu de set de reguli care blochează toate porturile, cu excepția SSH (port 22) și HTTP (port 80):
sudo iptables -P INPUT DROP
sudo iptables -P FORWARD DROP
sudo iptables -P OUTPUT ACCEPT

sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -A INPUT -i lo -j ACCEPT
Explicații:
  • Politica implicită pentru INPUT și FORWARD este setată pe DROP, blocând traficul nedorit.
  • Se acceptă traficul deja stabilit și conexiunile conexe.
  • Se permite accesul SSH și HTTP.
  • Se permite traficul intern pe interfața de loopback (lo).
Pentru a salva regulile iptables, în funcție de distribuție, poți folosi:
sudo iptables-save | sudo tee /etc/iptables/rules.v4

4. Utilizarea fail2ban pentru protecție suplimentară

fail2ban monitorizează log-urile pentru încercări repetate de acces neautorizat și poate bloca automat IP-urile suspecte prin firewall. Pentru a-l instala și configura:
sudo apt update
sudo apt install fail2ban

sudo systemctl enable fail2ban
sudo systemctl start fail2ban
Fișierul principal de configurare este /etc/fail2ban/jail.conf, dar este recomandat să creezi un fișier de tip override jail.local pentru setările personalizate.

5. Schimbarea portului SSH

SSH este unul dintre cele mai vizate servicii. O metodă simplă de securizare este schimbarea portului implicit 22 cu un port neobișnuit:
sudo nano /etc/ssh/sshd_config
Modifică linia:
#Port 22
în
Port 2222
Salvează fișierul și repornește SSH:
sudo systemctl restart sshd
Nu uita să actualizezi și regulile firewall pentru noul port:
sudo ufw allow 2222/tcp

6. Scanarea regulată a porturilor

Este bine să monitorizezi periodic porturile deschise pentru a detecta modificări neautorizate. Folosește:
sudo ss -tuln
sudo netstat -tulnp
De asemenea, poți folosi un scaner extern cum ar fi nmap:
sudo apt install nmap
nmap -sS -p- localhost
Acest scan va verifica toate porturile TCP pe localhost.

Concluzie

Securizarea porturilor pe Linux este o parte esențială a administrării unui server sigur. Prin identificarea porturilor deschise, închiderea serviciilor inutile, configurarea firewall-ului, utilizarea fail2ban și alte bune practici, poți reduce semnificativ riscul de atacuri cibernetice. Nu uita să monitorizezi constant serverul și să actualizezi regulile de securitate în funcție de nevoi. Aplicarea acestor metode îți va oferi o bază solidă pentru protejarea infrastructurii tale Linux.
Andrei
DESPRE AUTOR

Andrei

Administrator

Vezi profilul autorului →