Firewall installerad i operativsystemet används för att förhindra obehörig trafik mellan datanät. Manuell eller skapar automatiskt specialregler för brandväggen, som ansvarar för åtkomstkontroll. I OS, utvecklad på Linux-kärnan, Centos 7 finns en inbyggd brandvägg, och det styrs av brandvägg. Standard brandvägg är inblandad, och vi skulle vilja prata om det idag.
Anpassa brandvägg i centos 7
Som nämnts ovan tilldelas standard brandvägg i Centos 7 ett brandväggsverktyg. Det är därför som brandväggsinställningen kommer att övervägas vid exemplet på det här verktyget. Du kan ställa in filtreringsreglerna med samma iptables, men det utförs något annorlunda. Vi rekommenderar att du känner till konfigurationen av det nämnda verktyget genom att klicka på följande länk, och vi börjar demontera av brandvägg.Om du en gång kommer att vara tillfälligt eller permanent inaktivera brandväggen, rekommenderar vi dig att använda de instruktioner som presenteras i den andra artikeln med följande länk.
Läs mer: Inaktivera brandvägg i centos 7
Visa standardregler och prisvärda zoner
Även regelbunden brandvägg har sina egna bestämda regler och tillgängliga zoner. Innan vi börjar politiker redigera, rekommenderar vi dig att bekanta dig med den aktuella konfigurationen. Detta görs med hjälp av enkla kommandon:
- Standardzonen bestämmer Firewall-CMD -get-standard-zon-kommandot.
- Efter aktivering kommer du att se en ny sträng där den önskade parametern kommer att visas. Till exempel anses den "offentliga" zonen i skärmdumpen nedan.
- Men flera zoner kan vara aktiva omedelbart, dessutom är de knutna till ett separat gränssnitt. Ta reda på den här informationen via Firewall-CMD-GET-aktiva zoner.
- Firewall-CMD-lista-allt kommandot visar reglerna för standardzonen. Var uppmärksam på skärmbilden nedan. Du ser att den aktiva zonen "offentliga" är tilldelad "standard" -regeln - standardfunktionen, ENP0S3-gränssnittet och två tjänster som läggs till.
- Om du behöver lära dig alla tillgängliga brandväggszoner, ange Firewall-Cmd --get-zoner.
- Parametrarna för den specifika zonen definieras via Firewall-CMD --Zone = NAME -LIST-ALL, där namnet är namnet på zonen.
Efter att ha bestämt de önskade parametrarna kan du flytta till deras förändring och tillägg. Låt oss analysera flera av de mest populära konfigurationerna i detalj.
Ställa in gränssnittszoner
Som du vet från informationen ovan definieras din standardzon för varje gränssnitt. Det kommer att vara i det tills inställningarna ändrar användaren eller programmatiskt. Det är möjligt att manuellt överföra gränssnittet till zonen per session, och det utförs genom att aktivera sudo firewall-cmd --zone = hemkommandon --change-gränssnitt = et0. Resultatet "Framgång" föreslår att överföringen lyckades. Minns att sådana inställningar återställs omedelbart efter omstart av brandväggen.
Med en sådan förändring i parametrarna bör man komma ihåg att driften av tjänsterna kan återställas. Några av dem stöder inte att fungera i vissa zoner, låt oss säga, ssh, men det är tillgängligt i "hem", men i användaren eller specialtjänsten kommer att träna. Se till att gränssnittet framgångsrikt bundet till den nya filialen, genom att ange Firewall-CMD-GET-aktiva zoner.
Om du vill återställa de tidigare gjorda inställningarna, kör helt enkelt omstart av brandväggen: sudo systemctl starta om brandväggd.service.
Ibland är det inte alltid bekvämt att ändra gränssnittszonen i bara en session. I det här fallet måste du redigera konfigurationsfilen så att alla inställningar är emaljerade permanent. För att göra detta rekommenderar vi dig att använda Nano Text Editor, som är installerad från den officiella lagringen av sudo yum Install Nano. Nästa är fortfarande sådana åtgärder:
- Öppna konfigurationsfilen via redigeraren genom att ange sudo nano / etc / sysconfig / Network-scripts / IFCFG-Eth0, där ETH0 är namnet på det önskade gränssnittet.
- Bekräfta din kontoutentisering för att utföra ytterligare åtgärder.
- Layout "Zone" -parametern och ändra sitt värde till önskat, till exempel offentligt eller hem.
- Håll CTRL + O-tangenterna för att spara ändringarna.
- Ändra inte filnamnet, men klicka bara på Enter.
- Avsluta textredigeraren via CTRL + X.
Nu är gränssnittszonen den som du angav det, tills nästa redigering av konfigurationsfilen. För uppdaterade parametrar, kör sudo systemctl starta om nätverk.service och sudo systemctl starta om firewalld.service.
Ställa in standardzonen
Ovan har vi redan visat ett lag som låter dig lära dig standardzonen. Det kan också ändras genom att ställa in parametern till ditt val. För att göra detta, i konsolen, är det tillräckligt att registrera sudo firewall-cmd --et-standard-zon = namn, där namnet är namnet på den önskade zonen.
Kommandot framgång kommer att framgå av inskriptionen "framgång" i en separat linje. Därefter kommer alla aktuella gränssnitt att födas till den angivna zonen, om den andra inte är specificerad i konfigurationsfilerna.
Skapa regler för program och verktyg
I början av artikeln talade vi om verkan av varje zon. Definiera tjänster, verktyg och program i sådana grenar kommer att tillåta att tillämpa enskilda parametrar för var och en av dem för varje användarförfrågningar. Till att börja med, rekommenderar vi dig att bekanta dig med den fullständiga listan över tjänster som är tillgängliga för tillfället: Firewall-Cmd --get-tjänster.
Resultatet kommer att visas direkt i konsolen. Varje server är uppdelad med ett mellanslag, och du kan enkelt hitta det verktyg du är intresserad av. Om den önskade tjänsten saknas, bör den dessutom installeras. På installationsreglerna, läs i den officiella programvarudokumentationen.
Ovanstående kommando visar endast namnen på tjänsterna. Detaljerad information för var och en av dem erhålls via den enskilda filen på sökvägen / USR / Lib / Firewalld / Services. Sådana dokument har ett XML-format, till exempel, till SSH ser ut så här: /usr/lib/firewalld/services/ssh.xml, och dokumentet har följande innehåll:
Ssh.
Secure Shell (SSH) är ett protokoll för att logga in och exekvera kommandon på fjärrmaskiner. Det ger säker krypterad kommunikation. Om du planerar att komma åt din maskin RemoteNet via SSH via ett brandväckt gränssnitt, aktivera det här alternativet. Du behöver det OPENSSH-Server-paketet som är installerat för det här alternativet att vara användbart.
Service support aktiveras i en viss zon manuellt. I terminalen bör du ställa in Sudo Firewall-CMD --Zone = Public --DD-Service = HTTP-kommandot, där --Zone = offentligt är en aktiveringszon och -dd-service = http-servicenamn. Observera att en sådan ändring endast gäller inom en session.
Permanent tillägg utförs via Sudo Firewall-CMD - ZONE = Public-Permanent --DD-Service = HTTP, och resultatet "Framgång" indikerar den framgångsrika genomförandet av operationen.
Du kan visa en komplett lista över permanenta regler för en viss zon genom att visa en lista i en separat linje av konsolen: sudo firewall-cmd --zone = offentliga - permanent - lista.
Beslutsproblem med brist på tillgång till tjänsten
Standard brandväggsregler anges av de mest populära och säkra tjänsterna som tillåtet, men vissa standard- eller tredjepartsapplikationer det blockerar. I det här fallet behöver användaren manuellt ändra inställningarna för att lösa problemet med åtkomst. Du kan göra det i två olika metoder.
Portes Port
Som du vet använder alla nätverkstjänster en viss port. Det är lätt att detekteras av en brandvägg, och block kan utföras. För att undvika sådana åtgärder från brandväggen måste du öppna den önskade porten i Sudo Firewall-CMD --Zone = Portd-Port = 0000 / TCP, där - Zone = Public är ett hamnområde, --dd- port = 0000 / TCP-portnummer och protokoll. Alternativet Firewall-Cmd --list-portar visar en lista över öppna portar.
Om du behöver öppna portar som ingår i sortimentet, använd sudo Firewall-CMD String --Zone = Public --DD-port = 0000-9999 / UDP, där --ad-port = 0000-9999 / UDP-portområde och deras protokoll.
Ovanstående kommandon tillåter dig bara att testa användningen av liknande parametrar. Om det har gått framgångsrikt bör du lägga till samma hamnar i ständiga inställningar, och det här görs genom att ange sudo firewall-cmd --zone = offentlig-permanent --add-port = 0000 / tcp eller sudo firewall-cmd - Zon = Public-Permanent --Add-port = 0000-9999 / UDP. Förteckningen över öppna permanenta hamnar ses enligt följande: sudo firewall-cmd --zone = offentliga - permanent-list-portar.
Definition av service
Som du kan se orsakar du att lägga till portar inte några svårigheter, men förfarandet är komplicerat när applikationer använder en stor mängd. För att spåra alla använda hamnar blir svåra, med tanke på vilken tjänstebestämning kommer att vara mer korrekt alternativ:
- Kopiera konfigurationsfilen genom att skriva sudo cp /usr/lib/firewalld/services/service.xml /etc/firewalld/services/example.xml, där service.xml är namnet på servicefilen och exemplet.xml är namn på sina kopior.
- Öppna en kopia för att ändra via någon textredigerare, till exempel sudo nano /etc/firewalld/services/example.xml.
- Till exempel har vi skapat en kopia av HTTP-tjänsten. I dokumentet ser du i grunden olika metadata, till exempel ett kort namn och beskrivning. Det påverkar servern att bara arbeta för bytet av portnummer och protokoll. Ovanför strängen "" ska läggas till för att öppna porten. TCP - Begagnad protokoll, ett 0000 - portnummer.
- Spara alla ändringar (CTRL + O), stäng filen (CTRL + X) och starta sedan om brandväggen för att tillämpa parametrarna genom sudo Firewall-cmd -reload. Därefter kommer tjänsten att visas i listan över tillgängliga, som kan ses via brandvägg-cmd --get-tjänster.
Du måste bara välja den lämpligaste lösningen på serviceproblemet med tillgång till tjänsten och utför de anvisningar som tillhandahålls. Som du kan se utförs alla åtgärder ganska lätt, och det borde inte finnas några svårigheter.
Skapa anpassade zoner
Du vet redan att i början har ett stort antal olika zoner med definierade regler skapats i Firewalld. Men situationer uppstår när systemadministratören behöver skapa en användarzon, till exempel "PublicWeb" för den installerade webbservern eller "PrivatNs" - för DNS-servern. På dessa två exempel kommer vi att analysera tillägget av grenarna:
- Skapa två nya permanenta zoner av sudo firewall-cmd - PublicManent --New-Zone = PublicWeb och Sudo Firewall-Cmd --Permanent --New-Zone = Privatsns.
- De kommer att vara tillgängliga efter att ha startat om Sudo Firewall-Cmd --reload-verktyget. För att visa permanenta zoner, ange Sudo Firewall-Cmd-anmärkning --get-zoner.
- Tilldela dem nödvändiga tjänster, till exempel "ssh", "http" och "https". Dessa är gjorda av sudo Firewall-Cmd --Zone = PublicWeb --Add-Service = SSH, Sudo Firewall-Cmd --Zone = PublicWeb --DO-Service = PublicWeb - DO Firewall-CMD - PublicWeb - PublicWeb - Add-service = https, där --Zone = PublicWeb är namnet på zonen att lägga till. Du kan se aktiviteten av tjänster genom att väntar Firewall-CMD --Zone = PublicWeb-List-All.
Från den här artikeln lärde du dig att skapa anpassade zoner och lägga till tjänster till dem. Vi har redan sagt dem som standard och tilldela gränssnitt ovan, du kan bara ange rätt namn. Glöm inte att starta om brandväggen efter att ha gjort någon permanent förändring.
Som du kan se är Firewalld Firewall ett ganska volumetriskt verktyg som låter dig göra den mest flexibla konfigurationen av brandväggen. Det är bara att se till att verktyget lanserar med systemet och de angivna reglerna omedelbart börjar sitt arbete. Gör det med Sudo Systemctl Aktivera Firewalld-kommandot.