Config Server Firewall (o CSF) è un firewall avanzato e un server proxy per Linux. Il suo scopo principale è consentire a un amministratore di sistema di controllare l'accesso tra l'host locale e i computer collegati. Il software può anche essere configurato per monitorare il traffico di rete per attività dannose.
Offre una serie di funzionalità come "Criteri firewall", che consentono filtri di ogni tipo oltre ai servizi NAT (Network Address Translation), servizi di proxy, memorizzazione nella cache delle query del resolver DNS sui propri server DNS o non memorizzarle affatto nella cache. Supporta anche utenti autenticati con diversi livelli di privilegi per attività specifiche come la gestione delle politiche dei firewall o l'estensione del servizio NAT. Ha anche un bel "Registratore di sistema" che consente di registrare tutti i tipi di eventi che si verificano sul sistema, ad esempio accessi, disconnessioni, modifiche ai file, aggiunte o qualsiasi altro tipo di evento.
Il software è disponibile in diverse lingue, tra cui inglese, portoghese e francese.
Il codice sorgente del software è disponibile gratuitamente secondo i termini di una GNU General Public License.
Al giorno d'oggi, il vettore di attacco più comune per la maggior parte dei prodotti di sicurezza sono le vulnerabilità nelle applicazioni e nei file di configurazione. CSF rende difficile sfruttare tali difetti. Se hai intenzione di gestire un'attività open source o utilizzare un sistema Linux come back-end per la tua applicazione web, dovresti prendere in considerazione l'installazione di Config Server Firewall (CSF).
In questo articolo, mostreremo come installare e configurare un server CSF in Debian Linux. Questa guida funziona per le versioni Debian 10 e 11. Dopo aver letto questa guida, sarai in grado di attivare il firewall CSF di base e il server proxy.
Prerequisiti
- Questo articolo presuppone che tu abbia un sistema Debian 10 o Debian 11 Linux con privilegi di root.
- Questa guida presuppone che tu abbia una connessione Internet funzionante sul server.
- Questa guida presuppone che tu abbia una conoscenza di base di Linux e della riga di comando.
Aggiornamento del sistema
Prima di installare qualsiasi pacchetto, è sempre buona norma aggiornare il sistema. Eseguiamo il comando seguente per aggiornare il sistema.
sudo apt update && sudo apt upgrade -y
Questi comandi verificheranno se ci sono aggiornamenti disponibili nei repository e li installeranno. Quindi è necessario eseguire i seguenti comandi per installare le dipendenze richieste. Le dipendenze installate qui non sono installate per impostazione predefinita. Devi installarli manualmente. Il motivo è che forniscono funzionalità aggiuntive a un programma specifico e non sono sempre necessarie.
sudo apt install wget libio-socket-ssl-perl git perl iptables -y sudo apt install libnet-libidn-perl libcrypt-ssleay-perl -y sudo apt install libio-socket-inet6-perl libsocket6-perl sendmail dnsutils unzip - y
Esempio di output:
Installazione di CSF Firewall su Debian 11
Ora che hai installato tutte le dipendenze richieste, puoi installare CSF in Debian Linux. Il processo di installazione è abbastanza semplice, ma analizziamolo passo dopo passo.
I repository Debian non includono il pacchetto CSF per impostazione predefinita. Affinché CSF funzioni, devi scaricare e installare manualmente il pacchetto CSF.
Una volta estratto l'archivio CSF, avrai una nuova cartella denominata csf. La directory csf contiene tutti i file e l'installazione di cui hai bisogno per installare CSF nel server Debian.
Esegui il comando ls -l per verificare se la nuova directory è stata creata.
ls -l
1. Eseguire il comando wget http://download.configserver.com/csf.tgz per scaricare il pacchetto CSF nella directory di lavoro corrente.
wget http://download.configserver.com/csf.tgz
2. Una volta scaricato il pacchetto, eseguire il comando tar -xvzf csf.tgz per estrarre il pacchetto nella directory di lavoro corrente. tar sta per tape archive ed è un metodo per creare un archivio di file. x significa estrarre e v è per operazioni dettagliate. z è per la compressione gzip, il che significa che il file è compresso. f sta per un nome di file di archivio e, in questo caso, è csf.tgz.
tar -xvzf csf.tgz
Una volta estratto l'archivio CSF, avrai una nuova cartella denominata csf. La directory csf contiene tutti i file e l'installazione di cui hai bisogno per installare CSF nel server Debian.
3. Eseguire il comando ls -l per verificare se la nuova directory è stata creata.
ls -l
4. Spostati nella directory csf ed esegui il comando sudo bash install.sh per installare CSF sul tuo sistema.
install.sh è uno script di installazione che scarica automaticamente l'ultimo pacchetto CSF e lo installa sul tuo sistema. Questo script esegue per te tutto il duro lavoro relativo al download, all'estrazione e all'installazione delle dipendenze richieste, ecc.
Uno script di installazione è un file di testo eseguibile che automatizza il processo di installazione di un programma o pacchetto sul sistema. Lo script di solito controlla ciò di cui ha bisogno per installare, quindi lo scarica e lo installa sul tuo sistema. Ciò riduce notevolmente la quantità di tempo che dedichi all'installazione e alla configurazione delle cose, oltre a ridurre gli errori relativi alla configurazione manuale delle cose.
cd csf && sudo bash install.sh
Il processo di installazione richiede alcuni minuti, quindi aspettiamo solo che finisca. Una volta completata l'installazione, otterrai il seguente output.
A questo punto, hai installato correttamente CSF sul tuo server Debian 10 Linux. Ma dovresti controllare se i moduli iptables sono disponibili nel tuo sistema. iptables viene utilizzato nella creazione di regole CSF e firewall.
5. Eseguire il comando sudo perl /usr/local/csf/bin/csftest.pl per verificare se i moduli iptables sono disponibili.
sudo perl /usr/local/csf/bin/csftest.pl
Se ottieni un output come quello di seguito, sei a posto.
Configurazione dei criteri del firewall CSF
Ora che hai installato CSF sul tuo server Debian Linux, è il momento di configurarlo. In questa sezione, esamineremo come configurare alcuni criteri di base del firewall CSF.
Il file di configurazione csf.conf si trova nella directory /etc/csf e viene utilizzato per definire le politiche e le regole del firewall CSF.
1. L'esecuzione del comando sudo nano /etc/csf.conf aprirà il file di configurazione csf.conf. Ciò ti consentirà di modificare e visualizzare il contenuto di questo file
sudo nano /etc/csf/csf.conf
La prima cosa che dovrai fare è configurare le porte aperte. Porte aperte è il modo in cui definisci le porte che i tuoi utenti possono utilizzare per raggiungere i tuoi backend.
Scorri verso il basso fino alla sezione "Consenti in entrata" e "Consenti in uscita" per vedere tutte le porte aperte. Le porte più comunemente utilizzate sono aperte per impostazione predefinita. Puoi aprire porte aggiuntive aggiungendo manualmente il numero di porta all'elenco delle porte aperte se desideri consentire le connessioni attraverso di esse.
Ma ricorda, più porte aperte hai, più rischi correrai. Non vuoi che il tuo server sia un'anatra seduta per i cattivi. Quindi tieni sempre sotto controllo queste porte aperte e non troppe aperte contemporaneamente.
2. Per impostazione predefinita, PROVA è impostato su 1. Dovresti cambiarlo su 0 una volta terminato il test,
Prima
Dopo
3. ConnLimit la direttiva CSF può anche limitare il numero di connessioni in entrata a una porta specifica a un determinato valore. Questo è utile se vuoi limitare il numero di connessioni simultanee a una porta alla volta.
Ad esempio, 22;1;443;10 configurerebbe il firewall per consentire solo connessioni specifiche alle porte 22 e 443 in un determinato momento. Questo valore limita il numero di connessioni in entrata simultanee alla porta 22 a una sola alla volta e imposta un limite di dieci connessioni in entrata simultanee alla porta 443 alla volta.
3. PORTFLOOD La direttiva viene utilizzata per specificare il numero di tentativi di connessione consecutivi da un singolo indirizzo IP che deve essere bloccato per intervallo di tempo. Ad esempio, 22;tcp;3;3600 imposterebbe il firewall in modo da bloccare le connessioni per 60 minuti (3600 secondi) se vengono rilevati più di 3 tentativi di connessione consecutivi sulla porta 22 da un singolo IP. L'IP bloccato verrà sbloccato automaticamente una volta trascorsi i 3600 secondi.
4. Salvare e chiudere il file di configurazione csf.conf una volta terminato. Ora puoi ricaricare il tuo firewall SF per applicare le modifiche.
sudo csf -r
Esegui il comando sudo csf -l per verificare se una qualsiasi delle tue modifiche è stata sincronizzata con il firewall.
sudo csf -l
Conclusione
In questo articolo abbiamo imparato come installare e configurare CSF su un server Debian Linux. CSF è uno strumento firewall relativamente nuovo che consente di configurare facilmente le politiche e le regole del firewall. CSF potrebbe non essere la migliore soluzione firewall disponibile, ma è un buon punto di partenza per un nuovo amministratore di firewall Linux. Lascia un commento se hai domande o feedback.