Linux-da ConfigServer Security & Firewall (CSF) guruň we sazlaň


Islendik ýerde IT bilen baglanyşykly iş ýerlerine seretseňiz, howpsuzlyk taraplaryna yzygiderli isleg görersiňiz. Bu diňe bir kibernetik howpsuzlygyň gyzykly bir ugurdygyny aňlatman, eýsem gaty girdejili ugurdygyny hem aňladýar.

Şuny göz öňünde tutup, bu makalada Linux üçin doly howpsuzlyk toplumy bolan “ConfigServer Security & Firewall” (gysgaça CSF diýlip hem atlandyrylýar) nädip gurmalydygyny we sazlamalydygyny we adaty ulanylyş ýagdaýlaryny paýlaşarys. Soňra jogapkär serwerleriňizi berkitmek üçin CSF-ni gorag diwary we çozuş/giriş şowsuzlygyny kesgitlemek ulgamy hökmünde ulanyp bilersiňiz.

Goşmaça adieu bolmazdan, başlalyň.

Linux-da CSF gurmak we sazlamak

Başlamak üçin, Perl we libwww goldanýan paýlamalaryň islendik birine (RHEL we CentOS, openSUSE, Debian we Ubuntu) CSF gurmak üçin zerur şertdigini ýadyňyzdan çykarmaň. Düzgüne görä elýeterli bolmalydygy sebäpli, aşakdaky ädimleriň biri ölüm howply ýalňyşlygy yzyna gaýtarmasa, sizden hiç hili çäre görülmez (bu ýagdaýda ýitirilen garaşlylygy gurmak üçin paket dolandyryş ulgamyny ulanyň).

# yum install perl-libwww-perl
# apt install libwww-perl
# cd /usr/src
# wget https://download.configserver.com/csf.tgz
# tar xzf csf.tgz
# cd csf

Amalyň bu bölegi, ähli baglylyklaryň gurnalandygyny, web interfeýsi üçin zerur katalog gurluşlaryny we faýllaryny döreder, häzirki açyk portlary kesgitlär we başlangyç konfigurasiýany ýerine ýetireniňizden soň csf we lfd daemonlaryny täzeden açmagy ýatladar.

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

Aboveokardaky buýrugyň garaşylýan çykyşy aşakdaky ýaly:

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

Işleýän we CSF sazlaýan bolsaňyz, gorag diwaryny öçüriň.

# systemctl stop firewalld
# systemctl disable firewalld

TESTING =\1\ TESTING =\0\ üýtgediň (ýogsam, lfd daemon başlamaz) we girýän we çykýan portlaryň sanawyny a aşakdaky çykyşda görkezilişi ýaly /etc/csf/csf.conf sahypasynda vergi bilen bölünen sanaw (degişlilikde TCP_IN we TCP_OUT):

# 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"

Sazlama bilen razy bolanyňyzdan soň, üýtgeşmeleri saklaň we buýruk setirine gaýdyň.

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

Bu pursatda, indiki ara alnyp maslahatlaşylyşy ýaly gorag diwary we çozuşy kesgitlemek düzgünlerini gurup başlamaga taýýar.

CSF we çozuşy kesgitlemegiň düzgünlerini düzmek

Ilki bilen, häzirki gorag diwarynyň düzgünlerini aşakdaky ýaly barlamak islärsiňiz:

# csf -l

Olary duruzyp ýa-da täzeden ýükläp bilersiňiz:

# csf -f
# csf -r

degişlilikde. Bu opsiýalary ýatda saklamagy unutmaň - dowam edeniňizde size zerur bolar, esasanam üýtgeşmeler girizilenden we csf we lfd-i täzeden açanyňyzdan soň barlamak üçin.

192.168.0.10-dan gelýän birikmelere rugsat bermek.

# csf -a 192.168.0.10

Şonuň ýaly-da, 192.168.0.11-den gelip çykan baglanyşyklary inkär edip bilersiňiz.

# csf -d 192.168.0.11

Şeýle etmek isleseňiz, ýokardaky düzgünleriň her birini aýryp bilersiňiz.

# csf -ar 192.168.0.10
# csf -dr 192.168.0.11

Aboveokardaky -ar ýa-da -dr ulanylyşynyň bar bolan rugsady nädip aýyrýandygyny we berlen IP adresi bilen baglanyşykly düzgünleri inkär edýändigine üns beriň.

Serweriňiziň niýetlenen ulanylyşyna baglylykda, giriş baglanyşyklaryny port esasynda ygtybarly belgä çäklendirip bilersiňiz. Munuň üçin /etc/csf/csf.conf açyň we CONNLIMIT gözläň. Birnäçe porty kesgitläp bilersiňiz; baglanyşyklar bilen bölünen jübütler. Mysal üçin,

CONNLIMIT = "22;2,80;10"

diňe bir çeşmeden TCP 22 we 80 portlaryna diňe 2 we 10 gelýän birikmelere rugsat berer.

Saýlap boljak birnäçe duýduryş görnüşi bar. EMAIL_ALERT sazlamalaryny /etc/csf/csf.conf sahypasynda gözläň we baglanyşykly duýduryşy almak üçin \1\ düzülendigine göz ýetiriň. Mysal üçin,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

LF_ALERT_TO-da görkezilen adrese her gezek kimdir biri SSH-den üstünlikli gireninde ýa-da su buýrugy bilen başga bir hasaby açanda duýduryşyň iberilmegine sebäp bolar.

CSF konfigurasiýa opsiýalary we ulanylyşy

Bu aşakdaky opsiýalar csf konfigurasiýasyny üýtgetmek we dolandyrmak üçin ulanylýar. Csf-iň ähli konfigurasiýa faýllary/etc/csf katalogynyň aşagynda ýerleşýär. Aşakdaky faýllaryň haýsydyr birini üýtgetseňiz, üýtgetmek üçin csf daemonyny täzeden açmaly bolarsyňyz.

  • csf.conf: CSF-ni dolandyrmak üçin esasy konfigurasiýa faýly.
  • csf.allow: Gorag diwaryndaky IP we CIDR salgylarynyň sanawy.
  • csf.deny: Gorag diwaryndaky IP we CIDR salgylarynyň sanawy.
  • csf.ignore: Gorag diwaryndaky ähmiýet berilmedik IP we CIDR salgylarynyň sanawy.
  • csf. * äsgermezlik: Ulanyjylaryň, IP-leriň hasaba alynmaýan dürli faýllarynyň sanawy.

CSF gorag diwaryny aýyryň

CSF gorag diwaryny düýbünden aýyrmak isleseňiz, /etc/csf/uninstall.sh katalogynyň aşagyndaky aşakdaky skripti işlediň.

# /etc/csf/uninstall.sh

Aboveokardaky buýruk CSF firewall-yny ähli faýllar we bukjalar bilen doly pozar.

Bu makalada CSF-ni gorag diwary we çozuşy kesgitlemek ulgamy hökmünde nädip gurmalydygyny, sazlamalydygyny we ulanmalydygyny düşündirdik. Has köp aýratynlygyň csf.conf sahypasynda görkezilendigini ýadyňyzdan çykarmaň.

Mysal üçin, web hosting işinde bolsaňyz, CSF-ni Webmin ýaly dolandyryş çözgütleri bilen birleşdirip bilersiňiz.

Bu makala hakda soraglaryňyz ýa-da teswirleriňiz barmy? Aşakdaky formany ulanyp bize habar iberip bilersiňiz. Sizden eşitmäge sabyrsyzlyk bilen garaşýarys!