Natrag na blog

Postavljanje vatrozida s FirewallD-om na CentOS 7

Postavljanje vatrozida s FirewallD-om na CentOS 7

Uvod

Firewalld je rješenje za upravljanje vatrozidom koje je dostupno za mnoge Linux distribucije. Služi kao sučelje za sustav filtriranja paketa iptables koji pruža Linux jezgra. U ovom vodiču naučit ćete kako konfigurirati vatrozid za svoj poslužitelj. Također ćemo vam pokazati osnove upravljanja vatrozidom pomoću administrativnog alata firewall-cmd.

Osnove Firewalld-a

FirewallD koristi koncepte zona i usluga, umjesto lanaca i pravila iptables-a. Ovisno o zonama i uslugama koje konfigurirate, možete kontrolirati koji je promet dopušten ili zabranjen prema sustavu i iz njega. FirewallD se može konfigurirati i njime upravljati pomoću uslužnog programa naredbenog retka firewall-cmd.

Instalirajte i omogućite pokretanje vatrozida pri podizanju sustava

Na većini Linux distribucija firewallD je već instaliran. Međutim, ako ga trebate sami instalirati, upišite sintaksu u nastavku:

Možete omogućiti uslugu i ponovno pokrenuti poslužitelj nakon što se firewalld instalira:

Zatim ponovno pokrenite poslužitelj. Vaš će vatrozid biti omogućen nakon što uspješno ponovno pokrenete poslužitelj. Nakon toga upotrijebite naredbu u nastavku kako biste provjerili je li usluga aktivirana:

check firewall state FirewallD

Izlaz pokazuje da zadana postavka vatrozida radi.

Provjera zadanih postavki

Zonu koju je odabrao poslužitelj možete provjeriti pomoću ove naredbe:

check firewall default zone

Provjerite aktivnu zonu upisivanjem:

firewall active zones

Ispišite konfiguraciju zadane zone kako biste saznali pravila pridružena javnom području pomoću ove sintakse:

list all rules FirewallD

Izlaz pokazuje da je ova zona i zadana i aktivna zona. Također pokazuje da su sučelja eth0 i eth1 dodijeljena ovoj zoni.

Provjera alternativnih zona

Osim zadanih i aktivnih zona, postoje i druge zone koje možete istražiti. Unesite ovu naredbu da biste vidjeli sve dostupne zone:

firewall check other zones

Provjerite određenu konfiguraciju dodijeljenu zoni dodavanjem parametra –zone= u naredbu –list-all:

check zone configuration FirewallD

 Promjena zone sučelja

Možete jednostavno promijeniti zonu sučelja pomoću opcije –change-interface u kombinaciji s opcijom –change-interface. Sljedeća naredba dodijelit će sučelje eth1 radnom prostoru:

Promjene možete provjeriti upisivanjem:

changing firewall interface zones FirewallD

Promjena zadane zone

Da biste promijenili zadanu zonu, upotrijebite –set-default-zone nakon čega slijedi naziv zone koju želite postaviti kao zadanu. Na primjer, da biste promijenili zadanu zonu za početak, trebali biste pokrenuti sljedeću naredbu:

Zatim možete provjeriti promjene pomoću:

firewall change default zone

Postavljanje pravila za vaše aplikacije

Prođimo kroz osnove potrebne za definiranje iznimaka vatrozida za usluge:

Dodavanje usluge u vaše zone

Najjednostavniji način je dodavanje potrebnih priključaka ili usluga u zone koje koristite. Isto tako, možete koristiti opciju –get-services da biste vidjeli sve dostupne usluge:

firewall get services FirewallD

Uslugu za zonu možete aktivirati parametrom –add-service =. Radnja cilja zadanu zonu ili bilo koju zonu definiranu parametrom –zone =. Prema zadanim postavkama konfigurirana je samo trenutna sesija vatrozida. Trajnu konfiguraciju vatrozida možete postaviti aktiviranjem zastavice –permanent. Na primjer, ako pokrećete web poslužitelj koji pruža uobičajeni HTTP promet, taj promet možete dopustiti za sučelja u našoj zoni “public” za ovu sesiju unosom:

Možete izostaviti –zone = ako želite promijeniti zadanu zonu. Uspješnost operacije možete provjeriti operacijama –list-all ili –list-services:

add service to zone

Nakon što potvrdite da sve radi kako je očekivano, najvjerojatnije ćete htjeti promijeniti trajna pravila vatrozida kako bi vaša usluga i dalje bila dostupna nakon ponovnog pokretanja. Promjenu u našoj zoni “public” možemo učiniti trajnom unosom sintakse:

Možete provjeriti je li ovo bilo uspješno dodavanjem zastavice –permanent operaciji –list-services. Morate koristiti sudo za –sve trajne operacije:

Vaša zona “public” sada dopušta HTTP promet na portu 80. To možete dodati trenutnoj sesiji i trajnom skupu pravila pomoću naredbe u nastavku:

Ako nema usluga koje odgovaraju vašim zahtjevima, imate dvije izvrsne opcije za rješavanje ove situacije:

  1. Otvaranje porta za vaše zone

Najjednostavniji način za dodavanje podrške za vašu određenu aplikaciju je otvaranje portova koji se koriste u svakoj zoni. To je jednostavno poput određivanja porta ili raspona portova i odgovarajućeg protokola za portove koje trebate otvoriti. Na primjer, ako se vaša aplikacija izvodi na portu 5000 i koristi TCP, možete je dodati u zonu “public” za ovu sesiju pomoću parametra –add-port =. Protokoli mogu biti TCP ili UDP:

Kako biste provjerili je li operacija uspješna, upotrijebite operaciju –list-ports:

Također možete odrediti raspon za serijsko sučelje odvajanjem početnog i završnog porta u rasponu crticom. Na primjer, ako vaša aplikacija koristi UDP portove od 4990 do 4999, možete ih otvoriti u zoni “public” upisivanjem:

Nakon testiranja, vjerojatno ćemo ih htjeti dodati u trajni vatrozid. To možete učiniti upisivanjem sljedećeg:

adding ports to permanent firewall

  1. Definiranje usluge

Usluga je zbirka priključaka s pridruženim nazivom i opisom. Uslugama je lakše upravljati nego priključcima, ali to zahtijeva malo početnog rada. Najjednostavniji način za početak je kopiranje postojeće skripte (u / usr / lib / firewalld / services) u direktorij /etc/firewalld/services. Na primjer, možete kopirati definiciju SSH usluge kako biste je koristili u definiciji usluge “example” na sljedeći način. Naziv datoteke bez XML sufiksa određuje naziv usluge na popisu usluga vatrozida:

U ovom trenutku možete prilagoditi definiciju u kopiranoj datoteci:

Prvo, datoteka sadrži SSH definiciju koju ste kopirali:

Većina ove definicije sastoji se od metapodataka. Morate promijeniti kratki naziv usluge u oznakama <short>. Ovo je čitljiv naziv usluge. Zamislite da za našu “example” uslugu moramo otvoriti priključak 7777 za TCP i 8888 za UDP. Možete promijeniti postojeću definiciju ulaskom u način rada INSERT pritiskom na i:

Zatim pritisnite ESC i upišite: x za spremanje i zatvaranje datoteke. Nakon toga upišite naredbu u nastavku kako biste ponovno pokrenuli vatrozid i dobili pristup novoj usluzi;

Nakon toga upotrijebite naredbu u nastavku za popis dostupnih usluga:

get services

Ova je usluga sada dostupna u vašoj zoni.

Stvaranje vlastitih zona

Iako će unaprijed definirane zone vjerojatno biti dovoljne za većinu korisnika, moglo bi biti korisno definirati vlastite zone koje potpunije opisuju njihovu funkciju.

Kada dodajete zonu, dodajte je u trajne postavke vatrozida. Zatim možete ponovno učitati kako biste primijenili postavke na svoju sesiju. Na primjer, možete stvoriti dvije ranije spomenute zone upisivanjem:

Možete potvrditi da su prisutne u vašoj trajnoj konfiguraciji pomoću ove naredbe:

firewall zones

Ponovno učitajte vatrozid kako biste ove nove zone uveli u aktivnu konfiguraciju:

Sada možete dodijeliti odgovarajuće usluge i portove svojim zonama. Na primjer, za zonu “publicweb” možda biste željeli dodati usluge SSH, HTTP i HTTPS:

list public web zone

 

Također, možete dodati DNS uslugu u svoju zonu „privateDNS” pomoću ove naredbe:

list privateDNS zone FirewallD

Zatim možete promijeniti svoja sučelja na ove nove zone kako biste ih testirali:

Testirajte konfiguraciju da vidite radi li. Ako vam ove vrijednosti odgovaraju, morate dodati ista pravila u trajnu konfiguraciju. To možete učiniti ponovnom primjenom pravila s indikatorom —permanent:

 

Nakon što trajno primijenite ova pravila, možete ponovno pokrenuti svoju mrežu i ponovno učitati uslugu vatrozida:

Provjerite jesu li zone ispravno dodijeljene:

check active zones FirewallD

Nadalje, provjerite imaju li obje zone ispravnu uslugu:

Ako želite postaviti jednu od svojih zona kao zadanu za druga sučelja, morate konfigurirati ovo ponašanje pomoću parametra –set-default-zone= koristeći ovu naredbu:

Zaključak

U ovom ste trenutku uspješno stvorili vlastite zone. Trebali biste imati osnovno razumijevanje administriranja usluge firewalld na vašem CentOS sustavu za svakodnevnu upotrebu. Dobro razumijevanje usluge firewalld omogućuje vam da u potpunosti iskoristite njezinu snagu i fleksibilnost.

Sretno računanje!

 

author

Akshay Nagpal

Autor · CloudSigma

Preslav Dobrev je kreativni dizajner u CloudSigma, usredotočen na dosljedan poslovni identitet korištenjem tradicionalnih i inovativnih marketinških kanala. Vješt je u spajanju umjetničke vizije sa strateškim marketingom kako bi stvorio dojmljive brendirane priče.

Komentari

Još nema komentara. Budite prvi.