Sakinisha na Usanidi ConfigServer Security & Firewall (CSF) katika Linux


Ukiangalia machapisho ya kazi yanayohusiana na IT mahali popote, utaona mahitaji ya kutosha ya wataalamu wa usalama. Hii haimaanishi tu kwamba usalama wa mtandao ni uwanja wa kuvutia wa kusoma, lakini pia ni faida kubwa sana.

Kwa kuzingatia hilo, katika makala haya tutaeleza jinsi ya kusakinisha na kusanidi ConfigServer Security & Firewall (pia inajulikana kama CSF kwa ufupi), kitengo kamili cha usalama cha Linux, na kushiriki kesi kadhaa za kawaida za utumiaji. Kisha utaweza kutumia CSF kama ngome na mfumo wa kugundua kutofaulu kwa kuingilia/kuingia ili kufanya seva unazowajibika kuzifanya kuwa ngumu.

Bila adieu zaidi, wacha tuanze.

Kusakinisha na Kusanidi CSF katika Linux

Kuanza, tafadhali kumbuka kuwa Perl na libwww ni sharti la kusakinisha CSF kwenye usambazaji wowote unaotumika (RHEL na CentOS, openSUSE, Debian, na Ubuntu). Kwa kuwa inapaswa kupatikana kwa chaguo-msingi, hakuna hatua inayohitajika kwa upande wako isipokuwa moja ya hatua zifuatazo itarejesha hitilafu mbaya (kwa hali hiyo, tumia mfumo wa usimamizi wa kifurushi ili kusakinisha utegemezi unaokosekana).

# 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

Sehemu hii ya mchakato itahakikisha kuwa vitegemezi vyote vimesakinishwa, kuunda muundo wa saraka na faili muhimu za kiolesura cha wavuti, kugundua milango iliyofunguliwa kwa sasa, na kukukumbusha kuanzisha upya daemons za csf na lfd baada ya kumaliza usanidi wa awali.

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

Matokeo yanayotarajiwa ya amri hapo juu ni kama ifuatavyo:

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

Zima firewall ikiwa inaendesha na usanidi CSF.

# systemctl stop firewalld
# systemctl disable firewalld

Badilisha TESTING = \1\ hadi TESTING = \0\ (vinginevyo, lfd daemon itashindwa kuanza) na kuorodhesha milango inayoingia na kutoka inayoruhusiwa kama orodha iliyotenganishwa kwa koma (TCP_IN na TCP_OUT, mtawalia) katika /etc/csf/csf.conf kama inavyoonyeshwa kwenye matokeo hapa chini:

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

Mara tu unapofurahi na usanidi, hifadhi mabadiliko na urejee kwenye mstari wa amri.

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

Kwa wakati huu tuko tayari kuanza kusanidi ngome na sheria za kugundua uvamizi kama tutakavyojadili.

Kuweka CSF na Sheria za Ugunduzi wa Uingiliaji

Kwanza kabisa, utataka kukagua sheria za sasa za ngome kama ifuatavyo:

# csf -l

Unaweza pia kuzisimamisha au kuzipakia upya kwa:

# csf -f
# csf -r

kwa mtiririko huo. Hakikisha kuwa umekariri chaguo hizi - utazihitaji unapoendelea, hasa kuangalia baada ya kufanya mabadiliko na kuanzisha upya csf na lfd.

Ili kuruhusu miunganisho inayoingia kutoka 192.168.0.10.

# csf -a 192.168.0.10

Vile vile, unaweza kukataa miunganisho inayotoka 192.168.0.11.

# csf -d 192.168.0.11

Unaweza kuondoa kila moja ya sheria zilizo hapo juu ikiwa ungependa kufanya hivyo.

# csf -ar 192.168.0.10
# csf -dr 192.168.0.11

Kumbuka jinsi matumizi ya -ar au -dr hapo juu huondoa kuruhusu na kukataa sheria zinazohusiana na anwani fulani ya IP.

Kulingana na matumizi yaliyokusudiwa ya seva yako, unaweza kutaka kupunguza miunganisho inayoingia kwa nambari salama kwa msingi wa mlango. Ili kufanya hivyo, fungua /etc/csf/csf.conf na utafute CONNLIMIT. Unaweza kutaja bandari nyingi; jozi za viunganishi vilivyotenganishwa na koma. Kwa mfano,

CONNLIMIT = "22;2,80;10"

itaruhusu tu miunganisho 2 na 10 inayoingia kutoka chanzo sawa hadi bandari za TCP 22 na 80, mtawalia.

Kuna aina kadhaa za tahadhari ambazo unaweza kuchagua. Tafuta EMAIL_ALERT mipangilio katika /etc/csf/csf.conf na uhakikishe kuwa imewekwa kwa \1\ ili kupokea tahadhari husika. Kwa mfano,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

itasababisha tahadhari kutumwa kwa anwani iliyobainishwa katika LF_ALERT_TO kila wakati mtu anapoingia kwa mafanikio kupitia SSH au kubadili hadi akaunti nyingine kwa kutumia su amri.

Chaguzi za Usanidi wa CSF na Matumizi

Chaguo hizi zifuatazo hutumiwa kurekebisha na kudhibiti usanidi wa csf. Faili zote za usanidi wa csf ziko chini ya /etc/csf saraka. Ukirekebisha mojawapo ya faili zifuatazo utahitaji kuanzisha upya daemon ya csf ili kuchukua mabadiliko.

  • csf.conf : Faili kuu la usanidi la kudhibiti CSF.
  • csf.allow : Orodha ya anwani za IP na CIDR zinazoruhusiwa kwenye ngome.
  • csf.deny : Orodha ya anwani za IP na CIDR zilizokataliwa kwenye ngome.
  • csf.ignore : Orodha ya anwani za IP na CIDR zilizopuuzwa kwenye ngome.
  • csf.*puuza : Orodha ya faili mbalimbali za kupuuza za watumiaji, IP.

Ondoa Firewall ya CSF

Ikiwa ungependa kuondoa firewall ya CSF kabisa, endesha tu hati ifuatayo iliyo chini ya /etc/csf/uninstall.sh saraka.

# /etc/csf/uninstall.sh

Amri iliyo hapo juu itafuta ngome ya CSF kabisa na faili na folda zote.

Katika makala haya tumeelezea jinsi ya kusakinisha, kusanidi, na kutumia CSF kama ngome na mfumo wa kugundua uvamizi. Tafadhali kumbuka kuwa vipengele zaidi vimeainishwa katika csf.conf.

Kwa mfano, Ikiwa uko katika biashara ya upangishaji wavuti, unaweza kuunganisha CSF na suluhu za usimamizi kama vile Webmin.

Je, una maswali au maoni yoyote kuhusu makala hii? Jisikie huru kututumia ujumbe kwa kutumia fomu iliyo hapa chini. Tunatarajia kusikia kutoka kwako!