Cum se configurează UFW Firewall pe Ubuntu și Debian


Un firewall care funcționează corect este cea mai importantă parte a securității complete a sistemului Linux. În mod implicit, distribuția Debian și Ubuntu vine cu un instrument de configurare a paravanului de protecție numit UFW (Firewall necomplicat), este un instrument de linie de comandă cel mai popular și ușor de utilizat pentru configurarea și gestionarea unui firewall pe distribuțiile Ubuntu și Debian.

În acest articol, vom explica cum să instalați și să configurați un paravan de protecție UFW pe distribuțiile Ubuntu și Debian.

Cerințe preliminare

Înainte de a începe cu acest articol, asigurați-vă că v-ați conectat la serverul Ubuntu sau Debian cu utilizatorul sudo sau cu contul root. Dacă nu aveți un utilizator sudo, puteți crea unul folosind următoarele instrucțiuni ca utilizator root.

adduser username
usermod -aG sudo username 
su - username
sudo whoami

Instalați UFW Firewall pe Ubuntu și Debian

UFW (Firewall necomplicat) ar trebui să fie instalat implicit în Ubuntu și Debian, dacă nu, instalați-l folosind managerul de pachete APT utilizând următoarea comandă.

sudo apt install ufw

Verificați UFW Firewall

Odată ce instalarea este finalizată, puteți verifica starea UFW tastând.

sudo ufw status verbose

La prima instalare, paravanul de protecție UFW este dezactivat implicit, rezultatul va fi similar celui de mai jos.

Status: inactive

Activați UFW Firewall

Puteți activa sau activa firewall-ul UFW utilizând următoarea comandă, care ar trebui să încarce firewall-ul și să îi permită pornirea la pornire.

sudo ufw enable

Pentru a dezactiva firewall-ul UFW, utilizați următoarea comandă, care descarcă firewall-ul și îl dezactivează de la pornire la pornire.

sudo ufw disable 

Politici implicite UFW

În mod implicit, paravanul de protecție UFW interzice toate conexiunile de intrare și permite numai toate conexiunile de ieșire la server. Aceasta înseamnă că nimeni nu vă poate accesa serverul, cu excepția cazului în care deschideți portul în mod specific, în timp ce toate serviciile sau aplicațiile care rulează de pe serverul dvs. pot avea acces la rețeaua exterioară.

Politicile implicite de firewall UFW sunt plasate în fișierul /etc/default/ufw și pot fi modificate folosind următoarea comandă.

sudo ufw default deny incoming
sudo ufw default allow outgoing

Profiluri de aplicație UFW

Când instalați un pachet software utilizând managerul de pachete APT, acesta va include un profil de aplicație în directorul /etc/ufw/applications.d care definește serviciul și păstrează setările UFW.

Puteți lista toate profilurile de aplicații disponibile pe serverul dvs. utilizând următoarea comandă.

sudo ufw app list

În funcție de instalarea pachetului software pe sistemul dvs., rezultatul va arăta similar cu următorul:

Available applications:
  APACHE
  APACHE Full
  APACHE SECURE
  CUPS
  OpenSSH
  Postfix
  Postfix SMTPS
  Postfix Submission

Dacă doriți să obțineți mai multe informații despre un anumit profil și regulile definite, puteți utiliza următoarea comandă.

sudo ufw app info 'Apache'
Profile: Apache
Title: Web Server 
Description: Apache V2 is the next generation f the omnipresent Apache web server.

Ports:
  80/tcp

Activați IPv6 cu UFW

Dacă serverul dvs. este configurat cu IPv6, asigurați-vă că UFW este configurat cu IPv6 și IPv4. Pentru a verifica acest lucru, deschideți fișierul de configurare UFW utilizând editorul preferat.

sudo vi /etc/default/ufw

Apoi asigurați-vă că „IPV6” este setat la „da” în fișierul de configurare, așa cum se arată.

IPV6=yes

Salvează și închide. Apoi reporniți firewall-ul cu următoarele comenzi:

sudo ufw disable
sudo ufw enable

Permite conexiuni SSH pe UFW

Dacă ați activat paravanul de protecție UFW până acum, ar bloca toate conexiunile de intrare și dacă sunteți conectat la serverul dvs. prin SSH dintr-o locație de la distanță, nu îl veți mai putea conecta din nou.

Să activăm conexiunile SSH la serverul nostru pentru a opri acest lucru folosind următoarea comandă:

sudo ufw allow ssh

Dacă utilizați un port SSH personalizat (de exemplu portul 2222), atunci trebuie să deschideți acel port pe paravanul de protecție UFW utilizând următoarea comandă.

sudo ufw allow 2222/tcp

Pentru a bloca toate conexiunile SSH, tastați următoarea comandă.

sudo ufw deny ssh/tcp
sudo ufw deny 2222/tcp  [If using custom SSH port]

Activați porturi specifice pe UFW

De asemenea, puteți deschide un anumit port în firewall pentru a permite conexiuni prin intermediul acestuia la un anumit serviciu. De exemplu, dacă doriți să configurați un server web care să asculte pe portul 80 (HTTP) și 443 (HTTPS >) implicit.

Mai jos sunt câteva exemple despre cum să permiteți conexiunile de intrare la serviciile Apache.

Deschideți portul 80 HTTP pe UFW
sudo ufw allow http     [By service name]
sudo ufw allow 80/tcp   [By port number]
sudo ufw allow 'Apache' [By application profile]
Deschideți portul 443 HTTPS pe UFW
sudo ufw allow https
sudo ufw allow 443/tcp
sudo ufw allow 'Apache Secure'

Permite intervale de porturi pe UFW

Presupunând că aveți unele aplicații pe care doriți să le rulați pe o serie de porturi (5000-5003), puteți adăuga toate aceste porturi folosind următoarele comenzi.

sudo ufw allow 5000:5003/tcp
sudo ufw allow 5000:5003/udp

Permiteți adrese IP specifice

Dacă doriți să permiteți conexiuni pe toate porturile de la o anumită adresă IP 192.168.56.1, atunci trebuie să specificați înainte adresa IP.

sudo ufw allow from 192.168.56.1

Permiteți anumite adrese IP pe un anumit port

Pentru a permite conexiunea pe un anumit port (de exemplu portul 22) de la aparatul dvs. de acasă cu adresa IP 192.168.56.1, atunci trebuie să adăugați orice port< și numărul portului după adresa IP, așa cum se arată.

sudo ufw allow from 192.168.56.1 to any port 22

Permiteți subrețelelor de rețea la un anumit port

Pentru a permite conexiuni pentru anumite adrese IP, de la 192.168.1.1 la 192.168.1.254 la portul 22 (SSH) , rulați următoarea comandă.

sudo ufw allow from 192.168.1.0/24 to any port 22

Permiteți o interfață de rețea specifică

Pentru a permite conexiuni la o anumită interfață de rețea eth2 pentru un anumit port 22 (SSH), executați următoarea comandă.

sudo ufw allow in on eth2 to any port 22

Refuzați conexiunile pe UFW

În mod implicit, toate conexiunile de intrare sunt blocate, cu excepția cazului în care ați deschis conexiunea în mod specific pe UFW. De exemplu, ați deschis porturile 80 și 443, iar serverul dvs. web este atacat din partea rețelei necunoscute 11.12.13.0/24.

Pentru a bloca toate conexiunile din acest interval de rețea 11.12.13.0/24, puteți folosi următoarea comandă.

sudo ufw deny from 11.12.13.0/24

Dacă doriți să blocați doar conexiunile pe porturile 80 și 443, puteți utiliza următoarele comenzi.

sudo ufw deny from 11.12.13.0/24 to any port 80
sudo ufw deny from 11.12.13.0/24 to any port 443

Ștergeți regulile UFW

Există două moduri de a șterge regulile UFW, după numărul regulii și după regula reală.

Pentru a șterge regulile UFW utilizând numărul regulii, mai întâi trebuie să enumerați regulile după numere folosind următoarea comandă.

sudo ufw status numbered
Ieșire eșantion
Status: active

     To                         Action      From
     --                         ------      ----
[ 1] 22/tcp                     ALLOW IN    Anywhere
[ 2] 80/tcp                     ALLOW IN    Anywhere

Pentru a șterge regula numărul 1, utilizați următoarea comandă.

sudo ufw delete 1

A doua metodă este să ștergeți o regulă utilizând regula reală, de exemplu pentru a șterge o regulă, specificați numărul portului cu protocolul așa cum se arată.

sudo ufw delete allow 22/tcp

Regulile UFW Dry Run

Puteți rula orice comandă ufw fără a face de fapt modificări în firewall-ul sistemului utilizând steag-ul --dry-run, acesta arată pur și simplu modificările care se presupune că vor avea loc.

sudo ufw --dry-run enable

Resetați paravanul de protecție UFW

Dintr-un motiv sau altul, dacă doriți să ștergeți/resetați toate regulile paravanului de protecție, tastați următoarele comenzi, acestea vor anula toate modificările și vor începe din nou.

sudo ufw reset
sudo ufw status

Funcționalitate avansată UFW

Paravanul de protecție UFW poate reuși să facă orice face iptables. Acest lucru se poate face cu diferite seturi de fișiere de reguli, care nu sunt altceva decât simple fișiere text iptables-restore.

Reglarea paravanului de protecție UFW sau adăugarea de comenzi iptables suplimentare nu sunt permise prin comanda ufw, este doar o chestiune de modificare a următoarelor fișiere text

  • /etc/default/ufw: fișierul principal de configurare cu reguli predefinite.
  • /etc/ufw/before[6].rules: în acest fișier regulile sunt calculate înainte de adăugarea prin comanda ufw.
  • /etc/ufw/after[6].rules: în acest fișier regulile sunt calculate după adăugarea prin comanda ufw.
  • /etc/ufw/sysctl.conf: acest fișier este folosit pentru a regla rețeaua kernel-ului.
  • /etc/ufw/ufw.conf: acest fișier activează ufw la pornire.

Asta este! UFW este un front-end excelent pentru iptables, cu o interfață ușor de utilizat pentru a defini reguli complexe cu o singură comandă ufw.

Dacă aveți întrebări sau gânduri de împărtășit despre acest articol ufw, folosiți formularul de comentarii de mai jos pentru a ne contacta.