![10 cei mai buni editori Markdown pentru Linux](/f/40304f4a97f672fcbb8862318f5f7536.png?width=100&height=100)
Filtru de rețea după cum știm cu toții că este un firewall în Linux. Firewalld este un daemon dinamic pentru a gestiona firewall-urile cu suport pentru zonele de rețea. În versiunea anterioară, RHEL & CentOS 6 am folosit iptables ca un demon pentru cadrul de filtrare a pachetelor. În RHEL/CentOS 7/8, Fedora și openSUSE - interfața rong> iptables este înlocuită de firewalld.
Este recomandat să începeți utilizarea Firewalld in loc de iptables deoarece acest lucru se poate întrerupe în viitor. In orice caz, iptables sunt încă acceptate și pot fi instalate cu yum comanda. Nu putem păstra Firewalld și iptables ambele în același sistem care poate duce la conflicte.
În iptables, obișnuiam să configurăm ca LANTURI DE INTRARE, IEȘIRE ȘI FATA dar aici Firewalld, conceptul folosește Zone. În mod implicit, există diferite zone disponibile în firewalld, care vor fi discutate în acest articol.
Zona de bază care sunt ca. zona publica și zona privata. Pentru ca lucrurile să funcționeze în jurul acestor zone, trebuie să adăugăm interfața cu suportul specificat pentru zonă și apoi putem adăuga serviciile la firewalld.
În mod implicit, există multe servicii disponibile, una dintre cele mai bune caracteristici ale firewalld este, vine cu servicii predefinite și putem lua aceste servicii ca exemplu pentru a adăuga serviciile noastre prin simpla copiere a acestora.
Firewalld funcționează excelent cu IPv4, IPv6, și Poduri Ethernet de asemenea. Putem avea o configurație permanentă de execuție și permanentă în firewalld.
Să începem cum să lucrăm cu zone și să creăm propriile noastre servicii și o utilizare mult mai interesantă a firewall-ului.
Sistem de operare: CentOS Linux lansează 7.0.1406 (Core) Adresa IP: 192.168.0.55. Numele gazdei: server1.tecmintlocal.com.
1.Firewalld pachetul este instalat implicit în RHEL / CentOS 7/8, Fedora și openSUSE. Dacă nu, îl puteți instala folosind următoarele yum comanda.
# yum instala firewalld -y.
2. După firewalld pachetul a fost instalat, este timpul să verificați dacă iptables serviciul rulează sau nu, dacă rulează, trebuie să oprești și să maschezi (să nu mai folosești) serviciul iptables cu comenzile de mai jos.
# systemctl status iptables. # systemctl stop iptables. # systemctl mask iptables.
3. Înainte de a merge la configurarea firewalld, aș dori să discut despre fiecare zonă. În mod implicit, există câteva zone disponibile. Trebuie să alocăm interfața zonei. O zonă definește că zona în care a fost încredințat sau refuzat nivelul la interfață pentru a obține o conexiune. O zonă poate conține servicii și porturi.
Aici, vom descrie fiecare zonă disponibilă în Firewalld.
Acum aveți o idee mai bună despre zone, acum să aflăm zonele disponibile, zonele implicite și să listăm toate zonele folosind următoarele comenzi.
# firewall-cmd --get-zones.
# firewall-cmd --get-default-zone.
# firewall-cmd --list-all-zones.
Notă: Ieșirea comenzii de mai sus nu se va potrivi într-o singură pagină, deoarece aceasta va lista toate zonele precum bloc, dmz, drop, extern, acasă, intern, public, de încredere și de lucru. Dacă zonele au reguli bogate, serviciile sau porturile activate vor fi, de asemenea, listate cu acele informații de zonă respective.
4. Dacă doriți să setați zona implicită ca internă, externă, drop, de lucru sau orice altă zonă, puteți utiliza comanda de mai jos pentru a seta zona implicită. Aici folosim „intern”Ca zonă implicită.
# firewall-cmd --set-default-zone = intern.
5. După setarea zonei, verificați zona implicită folosind comanda de mai jos.
# firewall-cmd --get-default-zone.
6. Aici este interfața noastră enp0s3, Dacă trebuie să verificăm zona noastră în care este delimitată interfața, putem folosi comanda de mai jos.
# firewall-cmd --get-zone-of-interface = enp0s3.
7. O altă caracteristică interesantă a firewalld este „icmptype‘Este unul dintre tipurile de icmp acceptate de firewalld. Pentru a obține lista tipurilor de icmp acceptate, putem folosi comanda de mai jos.
# firewall-cmd --get-icmptypes.
8. Serviciile sunt un set de reguli cu porturi și opțiuni care este utilizat de Firewalld. Serviciile care sunt activate vor fi încărcate automat atunci când Firewalld service în funcțiune.
În mod implicit, sunt disponibile multe servicii, pentru a obține lista tuturor serviciilor disponibile, utilizați următoarea comandă.
# firewall-cmd --get-services.
9. Pentru a obține lista tuturor serviciilor disponibile implicite, accesați următorul director, aici veți obține lista serviciilor.
# cd / usr / lib / firewalld / services /
10. Pentru a vă crea propriul serviciu, trebuie să îl definiți în următoarea locație. De exemplu, aici vreau să adaug un serviciu pentru RTMP port 1935, faceți mai întâi o copie a oricăruia dintre servicii.
# cd / etc / firewalld / services / # cp /usr/lib/firewalld/services/ssh.xml / etc / firewalld / services /
Apoi, navigați la locația în care a fost copiat fișierul nostru de servicii, apoi redenumiți fișierul „ssh.xml' la 'rtmp.xml„Așa cum se arată în imaginea de mai jos.
# cd / etc / firewalld / services /
11. Apoi deschideți și editați fișierul ca Antet, descriere, protocol și număr de port, pe care trebuie să îl folosim pentru serviciul RTMP așa cum se arată în imaginea de mai jos.
12. Pentru a activa aceste modificări, reporniți serviciul firewall sau reîncărcați setările.
# firewall-cmd --reload.
13. Pentru a confirma, dacă serviciul este adăugat sau nu, executați comanda de mai jos pentru a obține o listă de servicii disponibile.
# firewall-cmd --get-services.
14. Aici vom vedea cum să gestionăm firewall-ul folosind comanda firewall-cmd. Pentru a cunoaște starea curentă a paravanului de protecție și a tuturor zonelor active, tastați următoarea comandă.
# firewall-cmd --state. # firewall-cmd --get-active-zones.
15. Pentru a obține zona publică pentru interfață enp0s3, aceasta este interfața implicită, care este definită în /etc/firewalld/firewalld.conf fișier ca DefaultZone = public.
Pentru a lista toate serviciile disponibile în această zonă de interfață implicită.
# firewall-cmd --get-service.
16. În exemplele de mai sus, am văzut cum să ne creăm propriile servicii prin crearea rtmp service, aici vom vedea cum se adaugă rtmp serviciul către zonă, de asemenea.
# firewall-cmd --add-service = rtmp.
17. Pentru a elimina zona adăugată, tastați.
# firewall-cmd --zone = public --remove-service = rtmp.
Pasul de mai sus a fost doar o perioadă temporară. Pentru ao face permanentă, trebuie să executăm comanda de mai jos cu opțiunea -permanent.
# firewall-cmd --add-service = rtmp --permanent. # firewall-cmd --reload.
18. Definiți reguli pentru gama sursei de rețea și deschideți oricare dintre porturi. De exemplu, dacă doriți să deschideți o gamă de rețea, spuneți „192.168.0.0/24„Și port”1935‘Folosiți următoarele comenzi.
# firewall-cmd --permanent --add-source = 192.168.0.0 / 24. # firewall-cmd --permanent --add-port = 1935 / tcp.
Asigurați-vă că reîncărcați serviciul firewall după adăugarea sau eliminarea oricăror servicii sau porturi.
# firewall-cmd --reload # firewall-cmd --list-all.
19. Dacă vreau să permit servicii precum http, https, vnc-server, PostgreSQL, utilizați următoarele reguli. Mai întâi, adăugați regula și faceți-o permanentă și reîncărcați regulile și verificați starea.
# firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "http" accept' # firewall-cmd --add-rich-rule 'rule family = sursa "ipv4" address = "192.168.0.0/24" service name = "http" accept '--permanent # firewall-cmd --add-rich-rule' rule family = "ipv4" address source = "192.168.0.0/24" service name = "https" Accept' # firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "https" accept' --permanent # firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "vnc-server" Accept' # firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "vnc-server" accept' --permanent # firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "postgresql" Accept' # firewall-cmd --add-rich-rule 'rule family = "ipv4" address source = "192.168.0.0/24" service name = "postgresql" accept' --permanent.
Acum, gama de rețea 192.168.0.0/24 pot folosi serviciul de mai sus de pe serverul meu. Optiunea -permanent poate fi folosit în fiecare regulă, dar trebuie să definim regula și să verificăm accesul clientului, după care trebuie să o facem permanentă.
20. După adăugarea regulilor de mai sus, nu uitați să reîncărcați regulile firewall-ului și să enumerați regulile folosind:
# firewall-cmd --reload. # firewall-cmd --list-all.
Pentru a afla mai multe despre Firewalld.
# om firewalld.
Gata, am văzut cum să configurăm un filtru de rețea folosind Firewalld în RHEL / CentOS și Fedora.
Net-filter este cadrul pentru un firewall pentru fiecare distribuție Linux. Înapoi în fiecare RHEL și CentOS ediții, le-am folosit iptables dar în versiunile mai noi, au introdus Firewalld. Este mai ușor de înțeles și de utilizat firewall. Sper că v-a plăcut scrisul.