Cum se instalează și se configurează Firewalld pe CentOS și Ubuntu

Securitatea este una dintre acțiunile care trebuie să fie întotdeauna prezente nu numai în organizații, ci și la nivel personal atunci când lucrăm cu un sistem de operare, și anume, deși există diverse instrumente pentru creșterea securității și a confidențialității în timpul utilizării unui sistem, sistemul în sine include o funcție suplimentară, cum ar fi firewall-ul.

Funcția esențială a unui firewall este de a crea și gestiona reguli de intrare și ieșire pentru a proteja întregul proces de conectare la rețea. Astfel, pachetele suspecte sau nesigure sunt împiedicate să pătrundă în computerul nostru și să provoace orice tip de daune, cum ar fi inserarea de programe malware sau deturnarea informațiilor.

Când lucrăm cu sisteme Linux, unul dintre cele mai sigure, avem utilități open source care ne ajută să facem acest proces de protecție mult mai complet și unul dintre aceste utilitare este Firewalld. Solvetic va explica ce este Firewalld și cum îl putem instala și utiliza în două dintre cele mai utilizate distribuții în prezent, cum ar fi CentOS și Ubuntu.

NotăProcesul de configurare este identic pentru ambele sisteme

Ce este FirewalldFirewalld (daemon firewall), este un utilitar al cărui scop este de a furniza un firewall gestionat dinamic care are suport pentru zonele de rețea în care este definit nivelul de încredere al conexiunilor de rețea sau al interfețelor care trebuie utilizate, Firewalld este compatibil cu adresele IPv4, Setări firewall IPv6, poduri Ethernet și grupuri de adrese IP.

Firewalld ne oferă o interfață pentru servicii sau aplicații pentru a adăuga reguli firewall direct, facilitând astfel sarcinile de control. Unul dintre principalele avantaje ale utilizării Firewalld este că toate modificările care trebuie făcute se pot face în timp real pe mediul de execuție fără a fi nevoie să reporniți serviciul sau Daemon, așa cum se întâmplă cu multe utilități.

Firewalld integrează o interfață D-Bus adecvată pentru gestionarea serviciilor, aplicațiilor și administrarea configurației firewallului. Această interfață poate fi integrată cu instrumentele de configurare precum firewall-cmd, firewall-config și firewall-applet.

Caracteristici FirewalldUnele dintre caracteristicile pe care le găsim atunci când utilizăm Firewalld sunt:

  • Suport pentru IPv4, IPv6, bridging și ipset.
  • Suport NAT IPv4 și IPv6.
  • Firewall sau zone firewall.
  • API D-Bus complet.
  • Servicii simple, port, protocol, port sursă, mascare, redirecționare port, filtru icmp, regulă bogată, interfață și control adresă sursă în zonele utilizate.
  • Interfață directă pentru management.
  • Funcție de blocare care creează o listă albă de aplicații care pot modifica paravanul de protecție.
  • Încărcarea automată a modulelor kernel Linux.
  • Integrare cu Puppet.
  • Regulile firewallului temporizat în zone.
  • Înregistrarea simplă a pachetelor refuzate.
  • Instrument de configurare grafică folosind gtk3.
  • Applet folosind Qt4.

DistribuțiiDistribuțiile de bază în care poate fi implementat Firewalld sunt:

  • RHEL 7, CentOS 7
  • Fedora 18 și mai mare

AplicațiiAplicațiile și bibliotecile care acceptă firewalld ca instrument de gestionare firewall includ:

  • Manager de rețea
  • libvirt
  • docher
  • fail2ban

Este important ca, înainte de a intra în detalii despre cum să instalați și să utilizați Firewalld, să știm puțin mai multe despre acesta, Firewalld este compus din trei straturi care sunt:

  • Stratul principal (strat de bază) care este responsabil pentru gestionarea configurației și a serviciilor precum iptables, ip6tables, ebtables, ipset și modulul de încărcare.
  • Interfață D-Bus: care este principalul mijloc de modificare și creare a setărilor firewall-ului.
  • Backend-urile care permit interacțiunea cu netfilter (modulul kernel nativ utilizat pentru firewall) și unele sunt considerate iptables, ip6tables, ebtables, ipset, nft, linnftables etc.

Interfața D-Bus firewall este cea mai importantă modalitate de a crea și edita setările firewall-ului. Această interfață este utilizată de toate instrumentele online încorporate în firewalld, cum ar fi firewall-cmd, firewall-config și firewall-applet, linia firewall-offline-cmd nu vorbește direct cu firewalld, dar editează și creează fișierele de configurare ale firewalld direct prin kernel-ul firewall cu driverele IO.

Fișierul global de configurare pentru firewalld se află la /etc/firewalld/firewalld.conf, iar funcțiile firewall-ului sunt configurate în format XML.

Firewalld folosește zone care sunt cele care definesc nivelul de încredere pe care îl va avea conexiunea de rețea, interfața sau legătura adresă sursă și aceeași zonă poate fi utilizată pentru multe conexiuni de rețea, interfețe și surse.

Zonele disponibile în Firewalld sunt:

cădere bruscaAceasta este zona cu cel mai scăzut nivel de încredere, deoarece toate pachetele primite sunt respinse automat și permit doar pachetele de ieșire să fie activate.
blocAtunci când utilizați această zonă, nivelul de încredere este similar cu Drop, dar diferă doar prin faptul că pachetele primite sunt respinse folosind icmp-host-prohibit pentru IPv4 și icmp6-adm-interzis pentru mesajele IPv6.
PublicCu această zonă, nivelul de încredere se referă la rețelele publice de încredere, deci acceptă doar conexiuni de încredere.
ExternEste nivelul definit atunci când folosim firewall-ul ca gateway și mascarea acestuia este activată de routere.
DMZEste o zonă în care nivelul de încredere se aplică echipamentelor situate într-o zonă DMZ (demilitarizată), ceea ce înseamnă că există acces public restricționat la rețeaua internă. Acceptă doar conexiuni acceptate.
MuncăDupă cum indică și numele, acest nivel este utilizat în zonele de lucru care permit computerelor din rețea să aibă acces la acesta.
AcasăPrin utilizarea acestui nivel vorbim despre un mediu de acasă și majoritatea computerelor din rețea sunt acceptate
InternAcest tip de nivel se aplică rețelelor interne, astfel încât toate computerele din rețeaua locală să fie acceptate.
De încredereReprezintă Trust, ceea ce implică faptul că este cel mai înalt nivel și are încredere în toate conexiunile primite.

Pentru a configura sau adăuga zone, putem utiliza una dintre următoarele interfețe de configurare firewall disponibile:

  • Instrument de configurare grafică firewall-config.
  • Instrument firewall-cmd pentru linia de comandă.
  • Interfață programatică D-BUS.
  • Creați, copiați sau editați un fișier de zonă în oricare dintre directoarele de configurare, cum ar fi: / etc / firewalld / zones pentru fișierele de configurare personalizate și create de utilizator sau / usr / lib / firewalld / zones pentru configurații implicite și alternative.

1. Cum se instalează și se administrează Firewalld pe Linux

Pasul 1
În cazul utilizării CentOS 7, pachetul firewalld este preinstalat și poate fi verificat cu următoarea comandă:

 rpm -qa firewalld
În cazul Ubuntu trebuie să-l instalăm cu următoarea comandă:
 sudo apt install firewalld

MARI

Introducem litera S pentru a confirma descărcarea și instalarea Firewalld.

Pasul 2
Firewalld este un serviciu systemd obișnuit care poate fi gestionat prin comanda systemctl după cum urmează:

 sudo systemctl start firewalld (vă permite să porniți serviciul) sudo systemctl enable firewalld (activează serviciul în timpul pornirii sistemului) sudo systemctl status firewalld (vă permite să vedeți starea serviciului)

MARI

Pasul 3
După pornirea serviciului firewalld, putem verifica dacă demonul rulează sau nu în Linux, pentru aceasta trebuie să folosim instrumentul firewall-cmd, executăm următoarele:

 sudo firewall-cmd -state

MARI

2. Cum să gestionați zonele în Firewalld CentOS și Ubuntu

Pasul 1
Pentru a obține o listă a tuturor serviciilor și zonelor firewall disponibile, trebuie să executăm următoarele comenzi:
Pentru a vedea zonele:

 sudo firewall-cmd --get-zones

MARI

Pasul 2
Pentru a vedea serviciile pe care le vom executa:

 sudo firewall-cmd --get-services

MARI

Pasul 3
Zona implicită este zona implementată pentru fiecare caracteristică firewalld care nu este legată de o altă zonă, este posibil să se obțină zona implicită setată pentru conexiuni de rețea și interfețe executând următoarele:

 sudo firewall-cmd --get-default-zone

MARI

Pasul 4
Dacă dorim să stabilim o altă zonă implicită, trebuie să folosim următoarea comandă, trebuie remarcat faptul că dacă adăugăm opțiunea --permanent, configurația este stabilită permanent, putem executa oricare dintre următoarele opțiuni:

 sudo firewall-cmd --set-default-zone = extern
sau
 sudo firewall-cmd --set-default-zone = external -permanent
Pasul 4
Apoi aplicăm modificările executând:
 sudo firewall-cmd -reload

MARI

Pasul 5
Dacă scopul este să adăugăm o interfață într-o zonă, de exemplu, putem executa următoarele:

 sudo firewall-cmd --zone = home --add-interface = enp0s3
În acest caz, am adăugat interfața enp0s3 (LAN) în zona de start.

MARI

Pasul 6
Trebuie remarcat faptul că o interfață poate fi adăugată doar într-o singură zonă, în schimb poate fi mutată într-o altă zonă, pentru aceasta vom folosi comutatorul --change-interface sau vom elimina din zona anterioară cu comutatorul -remove-interface și apoi adăugați-o la noua zonă, de exemplu:

 sudo firewall-cmd --zone = public --add-interface = enp0s3 sudo firewall-cmd --zone = public --change-interface = enp0s3
Cu Firewalld este posibil să folosim multe zone în același timp, dacă dorim să obținem o listă a tuturor zonelor active cu funcțiile activate, cum ar fi interfețe, servicii, porturi, protocoale, executăm următoarele:
 sudo firewall-cmd --get-active-zones

MARI

Pasul 7
Pentru a obține mai multe informații despre zone, cum ar fi ceea ce a fost activat sau eliminat, putem folosi una dintre aceste comenzi:

 sudo firewall-cmd --zone = home --list-all
SAU
 sudo firewall-cmd --info-zone public

MARI

Pasul 8
O altă opțiune utilă de utilizat cu Firewalld este --get-target, aceasta arată ținta unei zone permanente, țintele pot fi implicite, ACCEPT, DROP, REJECT, pentru a verifica ținta mai multor zone putem folosi una dintre următoarele comenzi :

 sudo firewall-cmd --permanent --zone = public --get-target sudo firewall-cmd --permanent --zone = block --get-target sudo firewall-cmd --permanent --zone = dmz --get- target sudo firewall-cmd --permanent --zone = external --get-target sudo firewall-cmd --permanent --zone = drop --get-target

3. Cum se blochează sau se deschid porturile în Firewalld Linux CentOS și Ubuntu


Pentru a deschide un port prin firewalld, trebuie doar să-l adăugați în zonă cu opțiunea --add-port, dacă zona nu este specificată în mod explicit, va fi activată în zona implicită.

Pasul 1
De exemplu, pentru a adăuga porturile 80 și 443 care permit traficul web de intrare prin protocoalele HTTP și HTTPS, vom executa următoarele:

 sudo firewall-cmd --zone = public --permanent --add-port = 80 / tcp --add-port = 443 / tcp

MARI

Pasul 2
Acum vom reîncărca firewall-ul și vom verifica funcțiile activate în zona publică:

 sudo firewall-cmd --reload sudo firewall-cmd --info-zone public

MARI

Pasul 3
Dacă dorim să blocăm un port în firewalld, trebuie să folosim opțiunea --remove-port, în acest exemplu astfel:

 sudo firewall-cmd --zone = public --permanent --remove-port = 80 / tcp --remove-port = 443 / tcp

4. Cum se blochează sau se deschid serviciile în Firewalld CentOS și Ubuntu


Pentru procesul de activare a unui serviciu în Firewalld trebuie să îl activăm folosind opțiunea --add-service, amintiți-vă că, dacă omitem zona, va fi utilizată zona implicită.

Pasul 1
De exemplu, pentru a activa serviciul http într-o zonă publică executăm:

 sudo firewall-cmd --zone = public --permanent --add-service = http sudo firewall-cmd -reload

MARI

Pasul 2
Cu parametrul -remove-service putem elimina serviciul din zona alocată:

 sudo firewall-cmd --zone = public --permanent --remove-service = http sudo firewall-cmd -reload

MARI

5. Cum se activează și se dezactivează mascherarea IP prin Firewalld Linux


IP masquerading, sau IPMASQ / MASQ) este un mecanism NAT care permite gazdelor dintr-o rețea cu adrese IP private să comunice cu Internetul prin adresa IP publică atribuită serverului Linux folosind gateway-ul IPMASQ.

Cu această mascare, traficul de la gazdele invizibile va apărea pe alte computere de pe Internet ca și cum ar fi venit direct de pe serverul Linux.

Pentru a verifica dacă mascarea este activă sau nu, executăm:

 sudo firewall-cmd --zone = public --query-masquerade
Apoi putem adăuga o zonă ca aceasta:
 sudo firewall-cmd --zone = public --add-masquerade
Pentru a elimina o zonă din acest tip de funcție, trebuie să executăm următoarele:
 sudo firewall-cmd --zone = public --remove-masquerade

6. Cum se activează și se dezactivează mesajul IMCP în Firewalld Linux


Protocolul ICMP (Internet Control Message Protocol) este un protocol care a fost dezvoltat pentru a genera solicitări de informații sau răspunsuri la acele cereri de informații sau în condiții de eroare pe tot parcursul procesului de comunicare pe net.

Pasul 1
În Firewalld este posibil să activați sau să dezactivați mesajele ICMP, dar se recomandă validarea tuturor tipurilor ICMP compatibile, pentru aceasta executăm:

 sudo firewall-cmd --get-icmptypes

MARI

Pasul 2
Putem adăuga sau bloca un ICMP după cum urmează:

 sudo firewall-cmd --zone = home --add-icmp-block = echo-reply sudo firewall-cmd --zone = home --remove-icmp-block = echo-reply

MARI

Pasul 3
Putem vedea toate tipurile de ICMP adăugate într-o zonă folosind comutatorul --list-icmp-blocks:

 sudo firewall-cmd --zone = home --list-icmp-blocks

7. Cum se activează sau nu modul de panică în Firewalld Linux CentOS și Ubuntu


Modul de panică este un mod special integrat în Firewalld în care toate pachetele de intrare și de ieșire sunt eliminate, iar conexiunile active vor expira odată ce este activat, putem activa acest mod în situații de urgență în care există o amenințare pentru sistem și astfel vom evita orice conexiune.

Pasul 1
Pentru a verifica modul de panică, vom folosi opțiunea --query-panic și o putem activa cu opțiunea sudo firewall-cmd --panic-on:

MARI

Pasul 2
Pentru a înțelege cum funcționează acest mod, atunci când este dezactivat, putem face ping pe un site web și vom primi toate cererile trimise, dar când este activat, vom vedea un mesaj care indică o eroare temporară a conexiunii:

MARI

Pasul 3
Pentru a dezactiva acest mod executăm:

 sudo firewall-cmd --panic-off

8. Cum se blochează Firewalld pe Linux CentOS și Ubuntu

Pasul 1
În Firewalld, aplicațiile sau serviciile locale pot modifica configurația firewall-ului dacă rulează cu privilegii de root, putem controla ce aplicații pot solicita modificări la firewall, adăugându-l la lista albă de blocare. Această funcție este dezactivată în mod implicit și o putem activa sau dezactiva cu comutatorul --lockdown-on sau -lockdown-off:

 sudo firewall-cmd --lockdown-on
SAU
 sudo firewall-cmd --lockdown-off
Pasul 2
O metodă mai sigură este să activați sau să dezactivați această funcție direct în ediția fișierului principal de configurare, deoarece uneori firewall-cmd nu există în lista albă de blocare, pentru aceasta accesăm fișierul de configurare:
 sudo nano /etc/firewalld/firewalld.conf

MARI

Acolo localizăm linia Lockdown = no și setăm starea sa la Lockdown = da, salvăm modificările folosind tastele Ctrl + O și ieșim din editor folosind Ctrl + X.

Firewalld este o soluție completă pentru a adăuga diverse reguli și zone distribuțiilor noastre Linux și, astfel, adăuga opțiuni de securitate generale mai bune sistemului.

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave