CSF, noto anche come "Config Server Firewall", è una delle applicazioni firewall più popolari e utili per Linux. Si basa su Iptables e aiuta a proteggere il tuo server da SYN flood, scansione delle porte e attacchi di forza bruta. CSF monitora i file di registro e quando vengono rilevati tentativi errati da un IP specifico, verranno temporaneamente bloccati. CSF fornisce anche un'interfaccia utente Web che può essere utilizzata per bloccare e sbloccare IP remoti da un browser Web. Può anche essere integrato con cPanel, DirectAdmin e Webmin.
In questo tutorial spiegheremo come installare CSF su Ubuntu 20.04.
Prerequisiti
• Una nuova VPS Ubuntu 20.04 sulla piattaforma Atlantic.Net Cloud
• Una password di root configurata sul tuo server
Fase 1:crea un server cloud Atlantic.Net
Per prima cosa, accedi al tuo server Atlantic.Net Cloud. Crea un nuovo server, scegliendo Ubuntu 20.04 come sistema operativo con almeno 1GB di RAM. Collegati al tuo Cloud Server tramite SSH e accedi utilizzando le credenziali evidenziate in alto nella pagina.
Dopo aver effettuato l'accesso al tuo server Ubuntu 20.04, esegui il comando seguente per aggiornare il tuo sistema di base con gli ultimi pacchetti disponibili.
apt-get update -y
Passaggio 2:installazione delle dipendenze richieste
Innanzitutto, dovrai installare alcune dipendenze richieste per CSF. Puoi installare tutte le dipendenze con il seguente comando:
apt-get install sendmail dnsutils unzip git perl iptables libio-socket-ssl-perl libcrypt-ssleay-perl libnet-libidn-perl libio-socket-inet6-perl libsocket6-perl -y
Una volta installate tutte le dipendenze, puoi procedere con l'installazione di CSF.
Fase 3 – Installa CSF
wget http://download.configserver.com/csf.tgz
Una volta scaricato, estrai il file scaricato con il seguente comando:
tar -xvzf csf.tgz
Quindi, cambia la directory nella directory estratta e installa CSF eseguendo lo script install.sh:
cd csf bash install.sh
Una volta completata l'installazione, dovresti ottenere il seguente output:
Installation Completed
Quindi, verifica se tutti i moduli Iptables richiesti sono installati con il seguente comando:
perl /usr/local/csf/bin/csftest.pl
Se tutto va bene, dovresti ottenere il seguente output:
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
Fase 4:configurazione del liquido cerebrospinale
Successivamente, dovrai configurare CSF secondo il tuo standard di sicurezza. Puoi configurarlo modificando il file /etc/csf/csf.conf:
nano /etc/csf/csf.conf
Modifica la riga seguente in base alle tue esigenze:
TESTING = "0" RESTRICT_SYSLOG = "3" 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" # Allow incoming UDP ports UDP_IN = "20,21,53,80,443" # Allow outgoing UDP ports # To allow outgoing traceroute add 33434:33523 to this list UDP_OUT = "20,21,53,113,123" # Allow incoming PING. Disabling PING will likely break external uptime # monitoring ICMP_IN = "1"
Salva e chiudi il file, quindi riavvia il CSF con il seguente comando:
csf -r
Quindi, esegui il comando seguente per elencare tutte le regole di Iptables:
csf -l
Dovresti ottenere il seguente output:
iptables mangle table ===================== Chain PREROUTING (policy ACCEPT 51 packets, 3332 bytes) num pkts bytes target prot opt in out source destination Chain INPUT (policy ACCEPT 46 packets, 3014 bytes) num pkts bytes target prot opt in out source destination Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 26 packets, 15816 bytes) num pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 26 packets, 15816 bytes) num pkts bytes target prot opt in out source destination iptables raw table ================== Chain PREROUTING (policy ACCEPT 51 packets, 3332 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 27 packets, 15972 bytes) num pkts bytes target prot opt in out source destination iptables nat table ================== Chain PREROUTING (policy ACCEPT 19 packets, 1410 bytes) num pkts bytes target prot opt in out source destination Chain INPUT (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination Chain OUTPUT (policy ACCEPT 1 packets, 76 bytes) num pkts bytes target prot opt in out source destination Chain POSTROUTING (policy ACCEPT 1 packets, 76 bytes) num pkts bytes target prot opt in out source destination
Passaggio 5:abilitare l'interfaccia utente Web CSF
CSF fornisce un'interfaccia basata sul web per gestire il firewall da un browser web. Per impostazione predefinita, è disabilitato nel file di configurazione predefinito di CSF, quindi dovrai prima abilitarlo.
Modificare il file di configurazione principale CSF con il seguente comando:
nano /etc/csf/csf.conf
Modifica le seguenti righe:
#Enable Web UI UI = "1" #Listening Port UI_PORT = "8080" #Admin username UI_USER = "admin" #Admin user password UI_PASS = "your-password" #Listening Interface UI_IP = ""
Salva e chiudi il file quando hai finito. Quindi, dovrai modificare il file /etc/csf/ui/ui.allow e aggiungere l'IP del server e l'IP della macchina remota da cui desideri accedere all'interfaccia utente Web di CSF.
nano /etc/csf/ui/ui.allow
Aggiungi l'IP del tuo server e l'IP della macchina remota:
your-server-ip remote-machine-ip
Salva e chiudi il file, quindi riavvia il servizio CSF e LFD per applicare le modifiche:
csf -r service lfd restart
A questo punto CSF viene avviato e rimane in ascolto sulla porta 8080. Puoi verificarlo con il seguente comando:
ss -antpl | grep 8080
You should get the following output: LISTEN 0 5 0.0.0.0:8080 0.0.0.0:* users:(("lfd UI",pid=34346,fd=4))
Fase 6:accedere all'interfaccia Web CSF
Ora apri il tuo browser web e digita l'URL http://your-server-ip:8080. Verrai reindirizzato alla pagina di accesso di CSF:
Fornisci il nome utente e la password dell'amministratore e fai clic sul pulsante Invio. Dovresti vedere la dashboard CSF nella schermata seguente:
Da qui puoi gestire il tuo firewall e bloccare e sbloccare facilmente qualsiasi indirizzo IP.
Passaggio 7:gestione del liquido cerebrospinale con riga di comando
Puoi anche gestire il firewall CSF, ad esempio consentire, negare o rimuovere un indirizzo IP, dall'interfaccia della riga di comando.
Per elencare tutte le regole del firewall, esegui il comando seguente:
csf -l
Per interrompere CSF, eseguire il comando seguente:
csf -s
Per consentire un indirizzo IP specifico, esegui il comando seguente:
csf -a ip-address
Per negare un indirizzo IP, esegui il seguente comando:
csf -d ip-address
Per rimuovere l'indirizzo IP bloccato da una regola CSF, eseguire il comando seguente:
csf -dr ip-address
Per verificare se l'indirizzo IP è bloccato o meno, eseguire il comando seguente:
csf -g ip-address
Per svuotare le regole del firewall CSF, eseguire il comando seguente:
csf -f
Per disabilitare CSF, eseguire il comando seguente:
csf -x
Conclusione
Congratulazioni! Hai installato correttamente il firewall CSF su Ubuntu 20.04. Hai anche abilitato un'interfaccia utente web per gestire CSF da un browser web. Prova oggi CSF sull'hosting VPS di Atlantic.Net.