Instalirajte i konfigurirajte ConfigServer Security & Firewall (CSF) u Linuxu


Ako pogledate oglase za posao koji se odnose na IT bilo gdje, primijetit ćete stalnu potražnju za profesionalcima iz sigurnosti. To ne znači samo da je sajber sigurnost zanimljivo polje proučavanja, već i vrlo unosno.

Imajući to na umu, u ovom članku ćemo objasniti kako instalirati i konfigurirati ConfigServer Security & Firewall (također poznat kao CSF ukratko), kompletan sigurnosni paket za Linux i podijelite nekoliko tipičnih slučajeva korištenja. Tada ćete moći koristiti CSF kao firewall i sistem za otkrivanje neuspjeha upada/prijave kako biste ojačali servere za koje ste odgovorni.

Bez daljeg zbogom, počnimo.

Instalacija i konfiguracija CSF-a u Linuxu

Za početak, imajte na umu da su Perl i libwww preduvjet za instaliranje CSF na bilo koju od podržanih distribucija (RHEL > i CentOS, openSUSE, Debian i Ubuntu). Budući da bi trebao biti dostupan prema zadanim postavkama, nije potrebna nikakva radnja s vaše strane osim ako jedan od sljedećih koraka ne vrati fatalnu grešku (u tom slučaju koristite sistem upravljanja paketima da instalirate nedostajuće ovisnosti).

yum install perl-libwww-perl
apt install libwww-perl

Korak 1 – Preuzmite CSF

cd /usr/src
wget https://download.configserver.com/csf.tgz

Korak 2 – Izvucite CSF tarball

tar xzf csf.tgz
cd csf

Korak 3 – Pokrenite CSF instalacijsku skriptu

Ovaj dio procesa će provjeriti da li su sve ovisnosti instalirane, kreirat će potrebne strukture direktorija i datoteke za web sučelje, otkriti trenutno otvorene portove i podsjetiti vas da ponovo pokrenete csf i lfd< demoni nakon što završite s početnom konfiguracijom.

sh install.sh
perl /usr/local/csf/bin/csftest.pl

Očekivani izlaz gornje naredbe je sljedeći:

Testing ip_tables/iptable_filter...OK
Testing ipt_LOG...OK
Testing ipt_multiport/xt_multiport...OK
Testing ipt_REJECT...OK
Testing ipt_state/xt_state...OK
Testing ipt_limit/xt_limit...OK
Testing ipt_recent...OK
Testing xt_connlimit...OK
Testing ipt_owner/xt_owner...OK
Testing iptable_nat/ipt_REDIRECT...OK
Testing iptable_nat/ipt_DNAT...OK

RESULT: csf should function on this server

Korak 4: Onemogućite zaštitni zid i konfigurirajte CSF

Onemogućite firewalld ako je pokrenut i konfigurirajte CSF.

systemctl stop firewalld
systemctl disable firewalld

Promijenite TESTING="1" u TESTING="0" (u suprotnom, lfd daemon neće uspjeti da se pokrene) i navedite dozvoljene dolazne i odlazne portovi kao lista odvojena zarezima (TCP_IN i TCP_OUT, respektivno) u /etc/csf/csf.conf kao što je prikazano u donjem izlazu :

Testing flag - enables a CRON job that clears iptables incase of
configuration problems when you start csf. This should be enabled until you
are sure that the firewall works - i.e. incase you get locked out of your
server! Then do remember to set it to 0 and restart csf when you're sure
everything is OK. Stopping csf will remove the line from /etc/crontab
#
lfd will not start while this is enabled
TESTING = "0"

Allow incoming TCP ports
TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"

Allow outgoing TCP ports
TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"

Kada budete zadovoljni sa konfiguracijom, sačuvajte promene i vratite se na komandnu liniju.

Korak 5 – Ponovo pokrenite i testirajte CSF

systemctl restart {csf,lfd}
systemctl enable {csf,lfd}
systemctl is-active {csf,lfd}
csf -v

U ovom trenutku spremni smo za početak postavljanja firewall-a i pravila za detekciju upada kao što je objašnjeno u nastavku.

Postavljanje CSF i pravila za otkrivanje upada

Prvo, htjet ćete provjeriti trenutna pravila zaštitnog zida na sljedeći način:

csf -l

Također ih možete zaustaviti ili ponovo učitati pomoću:

csf -f
csf -r

respektivno. Obavezno zapamtite ove opcije – trebat će vam u toku, posebno da provjerite nakon unošenja izmjena i ponovnog pokretanja csf i lfd.

Primjer 1 – Dopuštanje i zabrana IP adresa

Da dozvolite dolazne veze sa 192.168.0.10.

csf -a 192.168.0.10

Slično, možete odbiti veze koje potiču sa 192.168.0.11.

csf -d 192.168.0.11

Možete ukloniti svako od gore navedenih pravila ako to želite.

csf -ar 192.168.0.10
csf -dr 192.168.0.11

Obratite pažnju na to kako korištenje -ar ili -dr iznad uklanja postojeća pravila za dopuštenje i zabrane pridružena datoj IP adresi.

Primjer 2 – Ograničavanje dolaznih veza prema izvoru

U zavisnosti od namena vašeg servera, možda ćete želeti da ograničite dolazne veze na siguran broj na bazi porta. Da biste to učinili, otvorite /etc/csf/csf.conf i potražite CONNLIMIT. Možete odrediti više portova; parovi veza odvojeni zarezima. Na primjer,

CONNLIMIT = "22;2,80;10"

će dozvoliti samo 2 i 10 dolaznih veza iz istog izvora na TCP portove 22 i 80, respektivno.

Primjer 3 – Slanje upozorenja putem e-pošte

Postoji nekoliko tipova upozorenja koje možete odabrati. Potražite postavke EMAIL_ALERT u /etc/csf/csf.conf i provjerite jesu li postavljene na "1" za primanje povezanog upozorenja. Na primjer,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

će uzrokovati da se upozorenje pošalje na adresu navedenu u LF_ALERT_TO svaki put kada se neko uspješno prijavi putem SSH-a ili pređe na drugi račun pomoću naredbe su.

Opcije i upotreba CSF konfiguracije

Ove sljedeće opcije se koriste za modificiranje i kontrolu csf konfiguracije. Sve konfiguracijske datoteke csf nalaze se u /etc/csf direktoriju. Ako izmijenite bilo koju od sljedećih datoteka, morat ćete ponovo pokrenuti csf demon da izvršite promjene.

  • csf.conf : Glavni konfiguracijski fajl za kontrolu CSF-a.
  • csf.allow : Lista dozvoljenih IP i CIDR adresa na zaštitnom zidu.
  • csf.deny : Lista odbijenih IP i CIDR adresa na firewall-u.
  • csf.ignore : Lista zanemarenih IP i CIDR adresa na firewall-u.
  • csf.*ignore : Lista različitih ignoriranih fajlova korisnika, IP adresa.

Uklonite CSF zaštitni zid

Ako želite potpuno ukloniti CSF zaštitni zid, samo pokrenite sljedeću skriptu koja se nalazi u direktoriju /etc/csf/uninstall.sh.

/etc/csf/uninstall.sh

Gornja komanda će potpuno izbrisati CSF zaštitni zid sa svim datotekama i fasciklama.

Sažetak

U ovom članku smo objasnili kako instalirati, konfigurirati i koristiti CSF kao zaštitni zid i sistem za otkrivanje upada. Imajte na umu da je više funkcija navedeno u csf.conf.

Na primjer, ako se bavite web hostingom, možete integrirati CSF sa rješenjima za upravljanje kao što su Cpanel, WHM ili dobro poznati Webmin.

Imate li pitanja ili komentara o ovom članku? Slobodno nam pošaljite poruku koristeći formu ispod. Radujemo se Vašem odgovoru!