Linux instalējiet un konfigurējiet ConfigServer Security & Firewall (CSF)


Ja jebkurā vietā apskatīsit ar IT saistītus darba sludinājumus, pamanīsit stabilu pieprasījumu pēc drošības profesionāļiem. Tas nenozīmē tikai to, ka kiberdrošība ir interesanta studiju joma, bet arī ļoti ienesīga.

Paturot to prātā, šajā rakstā mēs paskaidrosim, kā instalēt un konfigurēt ConfigServer Security & Firewall (saīsināti sauktu arī par CSF), pilnvērtīgu Linux drošības komplektu, un dalīsimies ar dažiem tipiskiem lietošanas gadījumiem. Pēc tam jūs varēsit izmantot CSF kā ugunsmūri un ielaušanās/pieteikšanās kļūmju noteikšanas sistēmu, lai nocietinātu serverus, par kuriem esat atbildīgs.

Sāksim bez papildu adieu.

CSF instalēšana un konfigurēšana Linux

Lai sāktu, lūdzu, ņemiet vērā, ka Perl un libwww ir priekšnoteikums CSF instalēšanai jebkurā atbalstītajā izplatīšanā (RHEL un CentOS, openSUSE, Debian un Ubuntu). Tā kā tam vajadzētu būt pieejamam pēc noklusējuma, jums nav jāveic nekādas darbības, ja vien kāda no šīm darbībām neatgriež fatālu kļūdu (tādā gadījumā izmantojiet pakotņu pārvaldības sistēmu, lai instalētu trūkstošās atkarības).

# 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

Šī procesa daļa pārbaudīs, vai visas atkarības ir instalētas, izveidos nepieciešamās direktoriju struktūras un failus tīmekļa saskarnei, noteiks pašreiz atvērtos portus un atgādinās jums restartēt csf un lfd dēmonus pēc sākotnējās konfigurēšanas pabeigšanas.

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

Paredzamais iepriekš minētās komandas rezultāts ir šāds:

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

Atspējojiet firewalld, ja darbojas, un konfigurējiet CSF.

# systemctl stop firewalld
# systemctl disable firewalld

Mainiet TESTING = "1" uz TESTING = "0" (pretējā gadījumā lfd dēmonu neizdosies sākt) un atļautos ienākošos un izejošos portus uzskaitiet kā komatu atdalītu sarakstu (Attiecīgi TCP_IN un TCP_OUT) mapēs /etc/csf/csf.conf, kā parādīts zemāk esošajā izvadē:

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

Kad esat apmierināts ar konfigurāciju, saglabājiet izmaiņas un atgriezieties komandrindā.

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

Šajā brīdī mēs esam gatavi sākt ugunsmūra un ielaušanās noteikšanas noteikumu iestatīšanu, kā apspriests tālāk.

CSF un ielaušanās noteikšanas noteikumu iestatīšana

Pirmkārt, jūs vēlaties pārbaudīt pašreizējos ugunsmūra noteikumus šādi:

# csf -l

Varat arī tos apturēt vai atkārtoti ielādēt ar:

# csf -f
# csf -r

attiecīgi. Noteikti iegaumējiet šīs opcijas - jums tās būs vajadzīgas, ejot līdzi, it īpaši, lai pārbaudītu pēc izmaiņu veikšanas un csf un lfd restartēšanas.

Lai atļautu ienākošos savienojumus no 192.168.0.10.

# csf -a 192.168.0.10

Tāpat jūs varat noliegt savienojumus, kuru izcelsme ir 192.168.0.11.

# csf -d 192.168.0.11

Ja vēlaties, varat noņemt katru no iepriekš minētajiem noteikumiem.

# csf -ar 192.168.0.10
# csf -dr 192.168.0.11

Ņemiet vērā, kā iepriekš minēto -ar vai -dr izmantošana noņem esošās atļaujas un noraidīšanas kārtulas, kas saistītas ar konkrētu IP adresi.

Atkarībā no paredzētā servera izmantošanas, iespējams, vēlēsities ierobežot ienākošos savienojumus ar drošu numuru, izmantojot portu. Lai to izdarītu, atveriet /etc/csf/csf.conf un meklējiet CONNLIMIT. Jūs varat norādīt vairākus portus; savienojumu pāri, atdalīti ar komatiem. Piemēram,

CONNLIMIT = "22;2,80;10"

ļaus tikai 2 un 10 ienākošos savienojumus no viena avota attiecīgi uz 22. un 80 TCP portiem.

Ir vairāki brīdinājumu veidi, kurus varat izvēlēties. Meklējiet EMAIL_ALERT iestatījumus mapē /etc/csf/csf.conf un pārliecinieties, vai tie ir iestatīti uz "1" , lai saņemtu saistīto brīdinājumu. Piemēram,

 
LF_SSH_EMAIL_ALERT = "1"
LF_SU_EMAIL_ALERT = "1"

radīs brīdinājumu uz LF_ALERT_TO norādīto adresi katru reizi, kad kāds veiksmīgi piesakās, izmantojot SSH, vai pārslēdzas uz citu kontu, izmantojot komandu su.

CSF konfigurācijas opcijas un izmantošana

Šīs modifikācijas tiek izmantotas, lai modificētu un kontrolētu csf konfigurāciju. Visi csf konfigurācijas faili atrodas direktorijā/etc/csf. Ja modificējat kādu no šiem failiem, jums būs jārestartē csf dēmons, lai veiktu izmaiņas.

  • csf.conf: galvenais konfigurācijas fails CSF kontrolei.
  • csf.allow: atļauto IP un CIDR adrešu saraksts ugunsmūrī.
  • csf.deny: ugunsmūrī ir noraidīto IP un CIDR adrešu saraksts.
  • csf.ignore: ugunsmūrī ignorēto IP un CIDR adrešu saraksts.
  • csf. * ignorēt: dažādu lietotāju ignorēto IP failu saraksts.

Noņemiet CSF ugunsmūri

Ja vēlaties pilnībā noņemt CSF ugunsmūri, vienkārši palaidiet šo skriptu, kas atrodas direktorijā /etc/csf/uninstall.sh.

# /etc/csf/uninstall.sh

Iepriekš minētā komanda pilnībā izdzēsīs CSF ugunsmūri ar visiem failiem un mapēm.

Šajā rakstā mēs esam paskaidrojuši, kā instalēt, konfigurēt un izmantot CSF kā ugunsmūri un ielaušanās noteikšanas sistēmu. Lūdzu, ņemiet vērā, ka citas funkcijas ir izklāstītas csf.conf.

Piemēram, ja nodarbojaties ar tīmekļa mitināšanas biznesu, varat integrēt CSF ar tādiem pārvaldības risinājumiem kā Webmin.

Vai jums ir kādi jautājumi vai komentāri par šo rakstu? Sūtiet mums ziņojumu, izmantojot zemāk esošo veidlapu. Mēs ceram uz jums atbildi!