I server connessi a Internet sono esposti a un flusso costante di attacchi e scansioni nell'arco della giornata. Sebbene un firewall e regolari aggiornamenti di sistema siano una buona prima difesa per mantenere il sistema al sicuro, dovresti anche controllare regolarmente che nessun utente malintenzionato si sia infiltrato. Gli strumenti descritti in questo tutorial sono realizzati per questi test, la scansione di malware, virus e rootkit. Dovrebbero essere eseguiti regolarmente, ad esempio ogni notte, e inviarti rapporti via e-mail. Puoi anche utilizzare Chkrootkit, Rkhunter e ISPProtect per scansionare un sistema quando noti attività sospette, come carichi elevati, processi sospetti o quando il server inizia improvvisamente a inviare malware.
Tutti questi scanner devono essere eseguiti come utenti root. Accedi come root prima di eseguirli. Su Ubuntu, usa:
sudo -s
per diventare l'utente root.
chkrootkit - Scanner rootkit Linux
Chkrootkit è un classico scanner di rootkit. Controlla il tuo server per processi rootkit sospetti e controlla un elenco di file rootkit noti.
O installa il pacchetto fornito con la tua distribuzione (su Debian e Ubuntu avresti eseguito
apt-get install chkrootkit
), oppure scaricare i sorgenti da www.chkrootkit.org e installarli manualmente:
wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense
Successivamente, puoi spostare la directory chkrootkit da qualche altra parte, ad es. a /usr/local/chkrootkit:
cd ..
mv chkrootkit-<version>/ /usr/local/chkrootkit
e crea un collegamento simbolico per un facile accesso:
ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit
Per controllare il tuo server con chkrootkit, esegui il comando:
chkrootkit
Una segnalazione comune di falsi positivi è:
Checking `bindshell'... INFECTED (PORTS: 465)
Non preoccuparti quando ricevi questo messaggio su un server di posta elettronica, questa è la porta SMTPS (Secure SMTP) del tuo sistema di posta e un noto falso positivo.
Puoi anche eseguire chkrootkit da un cron job e ricevere i risultati via email. Innanzitutto, scopri il percorso in cui chkrootkit è installato sul tuo server con:
which chkrootkit
Esempio:
[email protected]:/tmp/chkrootkit-0.52# which chkrootkit
/usr/sbin/chkrootkit
Chkrootkit è installato nel percorso /usr/sbin/chkrootkit, abbiamo bisogno di questo percorso nella riga cron qui sotto:
Corri:
crontab -e
Per creare un cron job come questo:
0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit output of my server" [email protected])
Ciò eseguirebbe chkrootkit ogni notte alle 3:00. Sostituisci il percorso di chkrootkit con il percorso che hai ricevuto dal comando precedente e scambia l'indirizzo email con il tuo indirizzo effettivo.
Lynis - Strumento di controllo della sicurezza universale e scanner rootkit
Lynis (precedentemente rkhunter) è uno strumento di controllo della sicurezza per sistemi basati su Linux e BSD. Esegue un controllo dettagliato di molti aspetti di sicurezza e configurazioni del tuo sistema. Scarica le ultime fonti Lynis da https://cisofy.com/downloads/lynis/:
cd /tmp
wget https://downloads.cisofy.com/lynis/lynis-3.0.7.tar.gz
tar xvfz lynis-3.0.7.tar.gz
mv lynis /usr/local/
ln -s /usr/local/lynis/lynis /usr/local/bin/lynis
Questo installerà Lynis nella directory /usr/local/lynis e creerà un collegamento simbolico per un facile accesso. Ora corri
lynis update info
per verificare se utilizzi l'ultima versione.
Ora puoi scansionare il tuo sistema alla ricerca di rootkit eseguendo:
lynis audit system
Lynis eseguirà alcuni controlli e poi si fermerà per darti un po' di tempo per leggere i risultati. Premere [ENTER] per continuare con la scansione.
Alla fine, ti mostrerà un riepilogo della scansione.
Per eseguire Lynis in modo non interattivo, avvialo con l'opzione --quick:
lynis --quick
Per eseguire Lynis automaticamente di notte, crea un cron job come questo:
0 3 * * * /usr/local/bin/lynis --quick 2>&1 | mail -s "lynis output of my server" [email protected])
Questo eseguirà Lynis ogni notte alle 3:00. Sostituisci l'indirizzo email con il tuo indirizzo reale.
ISPProtect - Scanner di malware per siti Web
ISPProtect è uno scanner di malware per server Web, esegue la scansione di malware nei file di siti Web e nei sistemi CMS come WordPress, Joomla, Drupal ecc. Se gestisci un server di hosting Web, i siti Web ospitati sono la parte più attaccata del tuo server ed è consigliato di eseguire regolarmente controlli di integrità su di loro. ISPProtect contiene 5 motori di scansione:
- Scanner di malware basato sulla firma.
- Scanner malware euristico.
- Uno scanner per mostrare le directory di installazione di sistemi CMS obsoleti.
- Uno scanner che ti mostra tutti i plugin WordPress obsoleti dell'intero server.
- Uno scanner del contenuto del database che controlla i database MySQL per il contenuto potenzialmente dannoso.
ISPProtect non è un software gratuito, ma esiste una versione di prova gratuita che può essere utilizzata senza registrazione per controllare la presenza di malware nel server o pulire un sistema infetto. La chiave di licenza gratuita per utilizzare la versione completa del software una volta sul tuo server è semplicemente "prova '.
ISPProtect richiede che PHP e ClamAV siano installati sul server, questo dovrebbe essere il caso della maggior parte dei sistemi di hosting. ClamAV viene utilizzato da ISPProtect nel primo livello di scansione con il set di firme malware di ISPProtect. Nel caso in cui non hai ancora installato un PHP da riga di comando, esegui:
sudo apt install php7.4-cli php7.4-curl clamav
su Debian 11 o Ubuntu 20.04 o
yum install PHP php-curl
su AlmaLinux, Fedora, CentOS o Rocky Linux.
Esegui i seguenti comandi per installare ISPProtect.
mkdir -p /usr/local/ispprotect chown -R root:root /usr/local/ispprotect chmod -R 750 /usr/local/ispprotect cd /usr/local/ispprotect wget http://www.ispprotect.com/download/ispp_scan.tar.gz tar xzf ispp_scan.tar.gz rm -f ispp_scan.tar.gz ln -s /usr/local/ispprotect/ispp_scan /usr/local/bin/ispp_scan
Per avviare ISPProtect, esegui:
ispp_scan
Lo scanner controlla automaticamente gli aggiornamenti, poi chiede la chiave (inserisci qui la parola "trial") e poi chiede il percorso dei siti web, normalmente /var/www.
Please enter scan key: <-- trial
Please enter path to scan: <-- /var/www
Lo scanner avvierà ora la scansione. Viene mostrato l'avanzamento della scansione. I nomi dei file infetti vengono visualizzati sullo schermo al termine della scansione e i risultati vengono archiviati in un file nella directory di installazione di ISPProtect per un uso successivo:
Per aggiornare ISPProtect, esegui il comando:
ispp_scan --update
Per eseguire ISPProtect automaticamente come cronjob notturno, crea un file cron con nano:
nano /etc/cron.d/ispprotect
e inserisci la seguente riga:
0 3 * * * root /usr/local/ispprotect/ispp_scan --update && /usr/local/ispprotect/ispp_scan --path=/var/www [email protected] --non-interactive --scan-key=AAA-BBB-CCC-DDD
Sostituisci "[email protected]" con il tuo indirizzo email, il rapporto di scansione viene inviato a questo indirizzo. Quindi scambia "AAA-BBB-CCC-DDD" con la tua chiave di licenza. Puoi ottenere una chiave di licenza qui.
È possibile ottenere un elenco completo delle opzioni della riga di comando del comando ISPProtect ispp_scan con:
ispp_scan --help