Category: How To

Linux How To (tutorials e guide) Come fare per....

Mag 09

Bloccare un IP con il firewall Bastille (ISPConfig)

Bastille , come bloccare un IP (ISPConfig)

 

Quando installiamo ISPConfig sul nostro server viene in genere utilizzato Bastille per bloccare alcune porte .

Se però abbiamo l’esigenza di bloccare un determinato IP possiamo modificare la configurazione di Bastille per inserire delle regole personalizzate. Questo sistema è utile ad esempio se ci troviamo sotto attacco , analizzando i vari log potremmo quindi bloccare gli indirizzi da cui provengono gli attacchi. Bloccarli a livello di firewall comporta un maggiore vantaggio sia in termini di prestazioni , poiché i vari servizi server non saranno costretti a servire e loggare la richiesta,  sia a livello di pulizia e grandezza dei vari log che resteranno così compatti e ridotti. Va ricordato però che con questo sistema , l’IP bloccato non potrà accedere a nessun servizio erogato dalla nostra macchina . E’ opportuno quindi effettuare un minimo di ricerca sull’indirizzo in questione utilizzando ad esempio strumenti come la geo localizzazione degli IP per conoscere il paese di provenienza , l’ISP che lo ha rilasciato e abbiamo di fronte un IP statico o dinamico.

Ecco come fare 

Creiamo la directory “firewall.d” nella cartella “/etc/Bastille e creiamo il file “post-rule-setup.sh”.

#cd /etc/Bastille
#mkdir firewall.d

#cd firewall.d
#vi post-rule-setup.sh

In questo file possiamo inserire qualsiasi regola IPTABLES valida . Bastille leggerà automaticamente il contenuto della cartella “firewall.d”

/sbin/iptables -I INPUT -s 185.130.4.0/24 -j DROP

In questo esempio, dichiarando la subnet mask,  ho bloccato un insieme di indirizzi IP che non potranno accedere in alcun modo al server. Il parametro -I inserisce la regola al di sopra delle altre quindi prestare attenzione al fatto che le regole vengono valutate in sequenza .

 

Una volta terminato, non dimenticare di riavviare Bastille per rendere le nostre modifiche effettive .

#/etc/init.d/bastille-firewall restart

Con questo sistema , le nostre regole saranno caricate ad ogni riavvio della macchina .

Premi qui per maggiori informazioni

 

Mag 09

Apache – Monitoraggio risorse con mod_status

A volte capita di imbattersi in una lentezza inaspettata dei siti web ospitati sul nostro server , così cominciamo a smanettare per poter trovare i parametri corretti per tutte le impostazioni di utilizzo di risorse del nostro caro web server Apache.

Uno strumento che puo’ esserci di aiuto è il modulo mod_status che ci permette di visualizzare una pagina web contenente tutte le informazioni di carico del web server Apache in tempo reale.

Ecco come abilitarlo

Per prima cosa dobbiamo editare il file di configurazione di Apache utilizzando ad esempio “vi”

vi /etc/httpd/conf/httpd.conf

Come prima cosa dobbiamo assicurarci che il modulo sia correttamente caricato facendo attenzione a che la seguente riga sia presente e non cominci con “#”

LoadModule status_module modules/mod_status.so

A questo punti ci basta inserire il seguente blocco di codice per abilitare il modulo di status

<Location /server-status>
   SetHandler server-status
   Order allow,deny
   Deny from all
   Allow from all 
</Location>

Questo codice vi permetterà di accedere alla pagina di stato digitando la URL example.com/server-status

In alcune configurazioni potrebbe essere necessario inserire anche un Alias

Alias /server-status /var/www/html

Per gli utenti che usano una configurazione basata su virtual server invece è necessario che il blocco di codice sia inserito all’interno dei tag che definiscono il virtual host che avete scelto

<VirtualHost *:80>
    ServerAdmin info@example.com
    DocumentRoot /var/www/html/example.com
    ServerName example.com
    ErrorLog logs/example.com-error_log
    CustomLog logs/example.com-access_log common
<Location /server-status>
   SetHandler server-status
   Order allow,deny
   Deny from all
   Allow from example.com 
</Location>
</VirtualHost>

 

Infine , è possibile abilitare la visualizzazione di maggiori informazioni come utilizzo CPU , Traffico totale e richieste per secondo  (da inserire in httpd.conf)

ExtendedStatus On

Ricordatevi alla fine di riavviare in web server Apache per rendere effettive le nostre modifiche

service httpd restart

 

Ora potete consultare lo stato del vostro server collegandovi a http://example.com/server-status

 

Ago 26

Svuotare la cache DNS

Premessa

Il DNS (Domain Name System) è un sistema utilizzato per risolvere i nomi di dominio in indirizzi IP e viceversa.

Ogni volta che digitiamo un nome di dominio o quando la nostra macchina deve contattare un host (terminale collegato ad una rete) sulla rete Internet , il DNS ci aiuta a risolvere il nome di dominio richiesto nel corrispondente indirizzo IP.

 

Banalmente il DNS può essere visto come una sorta di rubrica telefonica in cui ci sono scritti tutti gli indirizzi IP necessari per contattare i domini, ogni volta quindi che avremo bisogno di contattare un dominio , il DNS ci fornirà l’indirizzo IP ad esso associato.

 

La cache

Per velocizzare queste risoluzioni , il computer utilizza un sistema di cache, ossia una porzione di memoria in cui salva gli indirizzi risolti in precedenza in modo da non dover contattare nuovamente il server DNS.

Questo meccanismo permette ad un host di ottenere più velocemente un indirizzo IP poichè avendolo salvato nella propria memoria cache non è costretto a recarsi sulla rete impiegando ulteriore tempo.

 

e perchè dovrei svuotare la cache?

I record DNS hanno un valore TTL (Time to live) che indica per quanto tempo esso è valido. Se un record in cache ha il proprio TTL “scaduto” va risolto nuovamente contattando un dns esterno. Può accadere però che per vari motivi  un nome di dominio cambi il proprio indirizzo IP, in questo caso , tutti i record DNS ancora all’interno della loro validità TTL risolveranno ancora utilizzando il vecchio indirizzo IP presente in cache. Questo non ci permetterà di raggiungere il nuovo indirizzo del dominio. Per ovviare a questo problema basta richiedere manualmente lo svuotamento della memoria cache.

 

Comandi :

Linux

Aprire il terminale e digitare /etc/rc.d/init.d/nscd restart

Windows

Aprire il command e digitare ipconfig /flushdns

è possibile anche visualizzare la cache digitando ipconfig /displaydns