Proteggi SSH con SSHguard

 sshguard , è scritto in C, quindi usa meno memoria e CPU durante l’esecuzione pur ottenendo gli stessi risultati.

COSA FA SSHGUARD ?

La versione corta è: riceve i messaggi di log, rileva quando un servizio in rete è attaccato basandosi su di essi, e blocca l’indirizzo di chi sta attaccando, dopo qualche tempo, rimuove questo blocco.

La versione completa è: sshguard gira su una macchina come un piccolo demone, e riceve i messaggi di log (in diversi modi, ad esempio da syslog). Quando si determina che l’indirizzo X ha fatto qualcosa di male al servizio Y, attiva una regola nel firewall della macchina (uno dei tanti supportati) per il blocco di X.
Sshguard mantiene X bloccato per qualche tempo, poi lo rilascia automaticamente.

Si prega di notare che, nonostante il suo nome sshguard rileva di base gli attacchi per molti servizi, non solo SSH, ma anche diversi demoni ftpds, Exim e Dovecot. E’ in grado di operare con tutti i principali sistemi di firewalling, e fornisce supporto per IPv6, whitelist, sospensione, e registra i messaggi di autenticazione.

Installazione

Sshguard è distribuito sotto la permissiva licenza BSD: è possibile utilizzare, modificare e ridistribuire il software, a proprio rischio, per qualsiasi uso, anche commerciale, a condizione di conservare l’avviso di copyright originale che si trova al suo interno. Il software è distribuito nel repository principale delle più utilizzate distribuzioni GNU/Linux e per alcuni sistemi *BSD, ma è anche possibile scaricare i sorgenti dalla loro pagina di downlaod .

Per installarlo su Debian ( o altre distribuzioni che utilizzano i .deb come Ubuntu) lanciate da un terminale:

sudo aptitude install sshguard

Configurazione

Sshguard si interfaccia al sistema in due punti:

  • il sistema di logging (come sshguard riceve i messaggi di log per il monitoraggio)
  • il firewall (come sshguard blocca gli indirizzi indesiderati )

A partire dalla versione 1.5, sshguard viene fornito con il Log Sucker . Con il Log Sucker, SSHGuard recupera le voci dai log in modo proattivo, e gestisce in modo trasparente eventi come la rotazione dei file di log e la scomparsa e riapparizione dei file.

Nella pagina della documentazione ufficiale ci sono delle istruzioni per molti firewall differenti, io seguirò le istruzioni per netfilter/iptables.

sshguard non ha un file di configurazione. Tutta la configurazione che deve essere fatta è la creazione di una chain chiamata “sshguard” nella catena di INPUT di iptables dove sshguard inserisce automaticamente le regole per i pacchetti provenienti da host malevoli:

#Per il supporto a IPv4 :
iptables -N sshguard
# Se volete anche il supporto a IPv6 :
ip6tables -N sshguard

Ora aggiornare la catena di INPUT in modo che passi tutto il traffico che si desidera a sshguard, specificare con – dport tutte le porte dei servizi che si desidera proteggere con sshguard. Se si desidera impedire agli aggressori di fare tutto il traffico verso l’host, rimuovere completamente l’opzione:

#Blocca tutto il traffico:
iptables -A INPUT -j sshguard
ip6tables -A INPUT -j sshguard
 
        -- o --
 
#Blocca gli attaccanti solo per i servizi SSH, FTP, POP, IMAP  (usa il modulo "multiport")
iptables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143 -j sshguard
ip6tables -A INPUT -m multiport -p tcp --destination-ports 21,22,110,143 -j sshguard

Se al momento non usate iptables e volete solo avere sshguard installato e funzionante senza alcun ulteriore impatto sul sistema, questi comandi creano e salvano una configurazione iptables che non fa assolutamente nulla se non permettere ad sshguard di funzionare:

# iptables -F
# iptables -X
# iptables -P INPUT ACCEPT
# iptables -P FORWARD ACCEPT
# iptables -P OUTPUT ACCEPT
# iptables -N sshguard
# iptables -A INPUT -j sshguard
# /etc/rc.d/iptables save

Conclusioni

E questo è tutto quello che dovete fare per avere una installazione di base di sshguard installata e funzionante, vi aiuterà ad avere il vostro ssh, ftp ed altri demoni un po’ più sicuro.

Creazione automatica sito web apache con bash

Ecco un semplice script che crea website, alias, directory automaticamente tramite bash 

#!/bin/bash

echo "Inserisci dominio (es: example.com):";
read domain;
echo ""
echo "Inserisci Alias (es: www.example.com):";
read domain_alias;
echo ""

### Check $domain esiste
if ! grep "${domain}" /etc/apache2/sites-available/${domain}.conf >> /dev/null; then
echo "${domain} will be created"
mkdir -p /var/www/${domain}/{htdocs,logs,cgi-bin};
chown -R www-data:www-data /var/www/${domain}/

echo "
## Automatic generation from Genesi on `eval date +%d.%m.%Y`
## ${domain}

ServerName ${domain}
ServerAlias ${domain_alias}
DocumentRoot /var/www/${domain}/htdocs
ServerAdmin [email protected]

ErrorLog /var/www/${domain}/logs/error.log
CustomLog /var/www/${domain}/logs/access.log combined


Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all

" >> /etc/apache2/sites-available/${domain}.conf

echo "Testing configuration"
apache2ctl configtest
a2ensite ${domain}.conf
/etc/init.d/apache2 reload
else
echo "${domain} Dominio già esistente"
fi

 

Mediawiki FCKeditor

Dalla versione di MediaWiki > 1.16 la versione stabile di FCKeditor è disponibile qui : http://svn.wikimedia.org.

SVN path: http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions/FCKeditor)

Peccato solo che la versione ufficiale esce con un bel baco :

Fatal error: Cannot redeclare js_unescape() (previously declared in /home/webapps/ineh/extensions/FCKeditor/FCKeditorSajax.body.php:268) in /home/webapps/ineh/includes/AjaxFunctions.php on line 55

Per risolvere basta modificare questa pagina all’interno della cartella extensions/FCKeditor e cambiare  ‘js_unescape’ con ‘fck_js_unescape’;

O lo fate a mano o usate rpl ad esempio :

rpl js_unescape fck_js_unescape FCKeditorSajax.body.php

 

LVM – Come funziona

Introduzione 

LVM (Logical Volume Manager) permette l’utilizzo di dispositivi logici virtuali per accedere ai disci, mascherano cosi’ la natura dei dispositivi fisici su cui risiedono i dati.

E’ quindi possibile utilizzare un device virtuale di cui possono fare parte diversi hard disk fisici, anche di natura, velocità e dimensioni diverse.

I vantaggi di un simile approccio alla gestione dei file system sono maggiore flessibilita’ e scalabilita’, alta disponibilita’ del servizio e ridondanza.

Schema

                        -------------------------------------------------
Logical Volumes  (LV)   |    lv_share   |    lv_backup   |   (unused)   |
                        -------------------------------------------------
Volume Groups    (VG)   |                 vg_fileserver                 |
                        -------------------------------------------------
Physical Volumes (PV)   | /dev/sdb1 | /dev/sdc1 | /dev/sdd1 | /dev/sde1 |
                        -------------------------------------------------

Ricerca nuovi dischi 

Per vedere nuovi dischi aggiunti alla macchina:
echo 1 > /sys/class/fc_host/host/issue_lip
rescan-scsi-bus.sh -l -w -c
multipath

Physical Volumes (PV) 

Per creare un Physical Volume (PV) su una partizione esistente, cioe’ rendere la partizione adatta ad ospitare dei Volume Group (VG):
pvcreate ”/dev/sdb1”

Per visualizzare tutti i Physical Volume (PV) presenti:
pvdisplay

Per spostare tutti i dati da un Physical Volume (PV) ad un altro:
pvmove -i 10 ”/dev/sdb1” ”/dev/sdc1”

Volume Groups (VG) 

Per creare un Volume Group (VG) su un Physical Volume (PV) precedentemente creato:
vgcreate ”vg_name” ”/dev/sdb1” ”/dev/sdc1”

Per attivare un Volume Group (VG) non attivo:
vgchange -a y ”vg_name”

Per estendere un Volume Group (VG):
vgextend ”vg_name” ”/dev/sdd1”

Per visualizzare tutti i Volume Group (VG) presenti:
vgdisplay

Per rinominare un Volume Group (VG):
vgrename ”vg_name” ”vg_new_name”

Logical Volumes (LV)

Per creare un Logical Volume (LV) grande 2 GB su un Volume Group (VG) precedentemente creato:
lvcreate -L”2G” -n ”lv_name” ”vg_name”

Per formattare in xfs il Logical Volume (LV) appena creato:
mkfs.xfs /dev/”vg_name”/”lv_name”

Per estendere un Logical Volume (LV) di 1 GB:
lvextend -L”+1G” /dev/”vg_name”/”lv_name”

Per estendere il filesystem presente sul Logical Volume (LV) appena esteso:
xfs_growfs /mountpoint

Per visualizzare tutti i Logical Volume (LV) presenti:
lvdisplay

Monitorare progresso restore Mysql

Vi è mai capitato di dover copiare un file di grandi dimensioni e voler monitorare lo stato di avanzamento della copia? Con pv è possibile farlo in maniera molto semplice. Le distribuzioni più comuni permettono di installare pv con un semplice apt-get install pv o yum install pv, dopodiché potete monitorare lo stato di avanzamento di una copia semplicemente mettendo pv in pipe con altri comandi. pv di per sé si comporta in maniera molto simile a cat, quindi, ad esempio, se dovete mandare una serie di query a mysql :

# pv database_backup.sql | mysql my_database
96.8MB 0:00:17 [5.51MB/s] [==>                                ] 11% ETA 0:02:10

Ecco il nuovo sito Ubuntu App Developer: annuncio ufficiale!


Punto di riferimento fondamentale per tutti gli sviluppatori Ubuntu: il nuovo sito è stato ufficialmente annunciato e risulta giù attivo a questo indirizzo: http://developer.ubuntu.com/.

Un supporto passo passo per chi ha voglia di dedicarsi allo sviluppo di applicazioni per uno dei sistemi operativi free più utilizzati al mondo: il sito è costituito da diverse sezioni, tutte con uno scopo ben preciso.

  • Get started – Per incominciare…
  • Resources – Tutorial, guide e tutta la documentazione necessaria per lo sviluppo
  • Publish – Viene spiegato come usufruire del famoso Ubuntu Software Centre
  • Community – Community che riunisce tutti gli sviluppatori
  • My Apps – Sezione in cui possiamo tutte le applicazioni sviluppate e relative informazioni.

Ci si aspettano ulteriori novità e cambiamenti che verranno probabilmente discusse e rivelate in occasione dell’ Ubuntu Developer Summit che si terrà ad Orlando

Cancellare directory piena di files (giga)

Se stai cercando di eliminare un numero molto elevato di file in una sola volta (ho cancellato una directory con 7.485.000 oggi +), probabilmente incorrerai in questo errore:

/bin/rm: Argument list too long.

Il problema è che quando si digita qualcosa del tipo “rm-rf *”, il “*” viene sostituito con un elenco di tutti i file corrispondenti, come “rm-rf file1 file2 file3 file4” e così via. C’è un buffer relativamente piccolo di memoria allocata per la memorizzazione questo elenco di argomenti e se è riempito, la shell non esegue il programma.

Per ovviare a questo problema, un sacco di persone useranno il comando find per trovare tutti i file e passarli uno ad uno per il comando “rm” in questo modo:

find . -type f -exec rm -v {} \;

Il mio problema è che avevo bisogno di cancellare queli 8 milioni di log e sci metteva davvero troppo tempo.
Sono incappato in un modo molto più veloce di eliminare file – il comando “find” ha un “-delete”  perfetto per me! Ecco cosa ho finito per usare:

find . -type f -delete

Utilizzando questo metodo, ho cancellato di circa 2000 file / secondo …  molto più veloce!

È anche possibile visualizzare i nomi dei file mentre li cancellati :

find . -type d -print -delete

Server Proxy e Reverse – Proxy

Proxy

Un server proxy( detto anche «server mandatario») è all’origine un terminale che svolge la funzione di intermediario tra i computer di unarete locale(che usa talvolta dei protocolli diversi dal protocollo TCP/IP) e internet.

La maggior parte delle volte il server proxy è usato per ilweb, si tratta allora di un proxyHTTP. Tuttavia possono esistere dei server proxy per ogni protocollo applicativo (FTP,…).

schéma d\'un intranet avec proxy

Il principio di funzionamento di un proxy

Il principio di funzionamento basico di un server proxy è abbastanza semplice: si tratta di un server “mandato” da un’applicazione per effettuare una richiesta su internet al suo posto. Così, quando un utente si connette a internet tramite un’applicazione client configurata per usare un server proxy, questa si connetterà in primo luogo al server proxy e gli darà la sua richiesta. Il server proxy si connetterà allora al server che l’applicazione client cerca di raggiungere e gli trasmetterà la sua richiesta. Il server risponderà in seguito al proxy, che a sua volta trasmetterà la risposta all’applicazione client.

fonctionnement d\'un serveur proxy

Le funzionalità di un server proxy

Ormai, con l’uso delTCP/IP nelle reti locali, il ruolo di collegamento del server proxy è direttamente assicurato dalle passerelle e dai router. Ciò nonostante, i server proxy sono sempre attuali grazie ad altre funzionalità presenti.

La funzione di cache

La maggior parte dei proxy assicura anche una funzione di cache (in inglesecaching), cioè la capacità di mantenere in memoria (in“cache”) le pagine visitate più di frequente dagli utenti della rete locale per poterle fornire il più rapidamente possibile. In effetti, in informatica, il termine “cache” designa uno spazio di stoccaggio temporaneo dei dati (il termine “tampone” è ugualmente usato).

Un server proxy capace di mettere nella memoria cache le informazioni è generalmente detto “serverproxy-cache“.

Questa funzionalità implementata in alcuni server proxy permette da una parte di ridurre l’uso della banda passante verso internet e dall’altra di ridurre i tempi di accesso per gli utenti ai documenti.

Tuttavia, per arrivare a questo risultato, è necessario che il proxy paragoni regolarmente i dati stoccati nella memoria cache con quelli remoti per assicurarsi che i dati in cache siano sempre validi.

Il filtraggio

D’altra parte, grazie all’utilizzo di un proxy, è possibile assicurare il controllo delle connessioni (in ingleseloggingtracking) mediante la costituzione di file di log logs che registrano sistematicamente le richieste degli utenti ad una loro richiesta di connessione a internet.

E’ quindi possibile filtrare le connessioni internet analizzando da una parte le richieste dei client, e dall’altra le risposte dei server. Quando il filtraggio è realizzato paragonando la richiesta del client ad una lista di richieste autorizzate, si parla di lista bianca, se invece si tratta di una lista di siti vietati si parla allora di lista nera. Infine l’analisi delle risposte dei server seguendo una lista di criteri (parole chiave,…) è dettafiltraggio di contenuto.

L’autenticazione

Dato che il proxy è l’intermediario indispensabile degli utenti della rete interna per accedere a delle risorse esterne, è a volte possibile usarlo per autentificare gli utenti, cioè di chiedere loro di identificarsi mediante un nome utente e una password ad esempio. Sarà quindi facile dare l’accesso alle risorse esterne solo alle persone autorizzate a farlo e di poter registrare nei file di log degli accessi identificati.

Questo tipo di meccanismo, una volta realizzato, pone ovviamente numerosi problemi relativi alle libertà individuali e ai diritti delle persone…

I reverse-proxy

Viene detto reverse-proxyun server proxy-cache “montato al contrario”, cioè un server proxy che permette non agli utenti di accedere alla rete internet ma bensì agli utenti di internet di accedere indirettamente ad alcuni server interni.

schéma de principe d\'un relais inverse (reverse proxy)

Il reverse-proxy serve anche da collegamento per gli utenti internet che desiderano accedere ad un sito web interno trasmettendogli indirettamente le richieste. Grazie al reverse-proxy, il server web è protetto dagli attacchi diretti dall’esterno, cosa che rinforza la sicurezza della rete interna. D’altra parte, la funzione di cache del reverse-proxy può alleggerire il carico del server per cui è previsto, ed è la ragione per cui un server simile è talvolta detto » acceleratore « (server accelerator).

Infine, grazie a degli algoritmi perfezionati, il reverse-proxy può servire per ripartire il carico reindirizzando le richieste verso diversi server equivalenti; si parla allora di ripartizione del carico(in ingleseload balancing).

Realizzazione di un server proxy

Il proxy più diffuso è senza dubbio Squid, un software libero disponibile su numerose piattaforme tra cuiWindows eLinux.

Su Windows esistono più software che permettono di realizzare un server proxy ad un costo minore per la sua rete locale :

  • Wingate è la soluzione più diffusa (ma non gratuita)
  • la configurazione di un proxy con Jana server diventa sempre più di uso corrente
  • Windows 2000 integra Microsoft Proxy Server (MSP), completata da Microsoft Proxy Client, che permette di realizzare questa operazione

Incubo di una notte di mezza prescrizione

Ieri notte ho avuto un incubo. Uno di quelli che sembrano più veri del vero, di quelli che ti svegli tutto sudato nel cuore della notte.

Ho sognato il 2006 e la Juventus sotto processo. Ho sognato l’angoscia di quei momenti, il senso di stupore, che diventava depressione e poi dubbio. Ho sognato di interisti con la bava a bordo mento e ho visto le aule processuali assaltate come il forno delle grucce. Ho sognato titoli di giornali, salotti televisivi, ipotesi/speranze di condanna. Poi, pensate cosa ho sognato, ho sognato la sentenza: Juventus, Milan, Lazio e Fiorentina penalizzate di 20 punti. 20 punti e morta lì.
Ho sognato l’indignazione nerazzurra, lo stupore dei giornalisti, ho visto urlatori televisivi mordersi la lingua, ho letto venefici editoriali gazzettati, ho ascoltato furenti controcampi e l’esplodere dei soliti sospetti su quella Triade che la fa sempre franca.
Bla bla bla, parlate pure quanto volete. Volevate la B, maledetti corvacci.

Poi però ho sognato la parte peggiore: l’Inter vinceva il campionato post-scandalo (come lo chiamavano loro…) e anche quello successivo. D’altra parte, con quelle penalizzazioni è stato difficile fare mercato. Ho sognato la glorificazione interista come unica squadra incorruttibile del globo terracqueo. Mi son visto Moratti medagliato come un Montecuccoli, magnificato in patria e ossequiato all’estero come emblema del calcio pulito. Era dappertutto: idolo dei giapponesi per l’irresistibile fascino con cui pronunciava la parola “antipatico” (vocabolo che avrebbe col tempo sostituito kawai nella lingua del Sol Levante) e novello ceghevara per i pobres sudamericani, che ammiravano in lui il trionfo della virtù in barba all’arroganza dei potenti. Ho anche sognato giornalisti stilare agiografie e sperticarsi in paragoni: dal Conte di Carmagnola a Calimero, passando per Paperino (nel senso buono, di eroe positivo) e Maria Goretti.
E ho sognato, per questo, di essere incazzato, tremendamente incazzato. La nostra storia sporcata e quelli là, inattaccabili, a godere di ogni gloria e riverenza. Al bar un incubo: persino juventini a dirmi che, alla fine, era andata bene così e che bisognava voltare pagina. Per me, come per alcuni altri, invece era stata un’ingiustizia. Ci avevano fatto pagare colpe mai commesse sulla base di intercettazioni interpretabili, incomplete e fuori contesto. Mi sono sognato mentre spulciavo i libri neri del calcio, quei due Necronomicon pieni di numeri, virgolette e puntini di sospensione. Ho sognato che alcuni tifosi particolarmente rancorosi mi contattavano per mettere in piedi un sito dove rivendicare le nostre ragioni e far sentire la nostra, seppur piccola, voce. Qualche folle, addirittura, aveva avuto l’idea di interpellare un illustre avvocato per proporre un ricorso contro le decisioni della giustizia sportiva.
Ma tutto poi era finito in niente: troppo lavoro, troppa fatica. Anche la Triade aveva subito il colpo e alla fine aveva mollato: le continue pressioni e gli incessanti riferimenti a quella o quell’altra telefonata avevano spinto Moggi, Giraudo e Bettega ad andarsene per altri lidi. Al processo penale avevano puntato tutto sulla prescrizione e, dopo molti anni di tiritere e lungaggini burocratiche (culminate con l’assai poco onorevole tentativo di ricusare il giudice), l’avevano ottenuta.
Il calcio giocato era un’attrattiva troppo forte e il baraccone si era rimesso in moto.
Era finita: la Juve rubava. E se l’era pure cavata con poco.

Dannazione, mi sentivo soffocare. Non poteva essere. Sarebbe andata avanti per anni. Peggio del gol di Turone e dei guanti di Aldair. Non era un incubo, era molto peggio. Perché non c’era via d’uscita.
Come avrei raccontato ai miei figli di questa magnifica passione? Avrei potuto dar loro qualsiasi interpretazione, ma la carta avrebbe pur sempre cantato più forte di me: c’era una sentenza che parlava chiaro e tonnellate di articoli, elzeviri e servizi televisivi a far da triste contorno.
Giuro, avrei preferito piuttosto scendere in serie B. Mi sarebbe stata meno dolorosa la revoca di uno (o due) scudetti. Che Iddio mi fulmini, avrei preferito persino una proprietà che si autoaccusasse. Per rendere evidente l’ingiustizia e avere la possibilità di scoprire la verità su quanto accaduto. Il popolo juventino si sarebbe mobilitato, avremmo potuto farci sentire, rompere le scatole. Avremmo potuto unirci, incontrarci, conoscerci e riaffermare la nostra indistruttibile juventinità. Sarebbe stato bello conoscere altri come me…

Poi, improvvisamente, mi sono svegliato.
Era un maledettissimo incubo!
Ancora mezzo addormentato accendo il computer e mi collego ad internet. Colto da un angosciante dubbio, voglio controllare. Voglio essere sicuro di essere sveglio e che tutto è assolutamente reale. Nessuna voce amica però. La notizia – se è vera – sarà dappertutto. Da un forum interista leggo:

Facchetti è stato AMMAZZATO da Palazzi.
Lo ha giudicato colpevole di violazione del ARTICOLO 6.
Moggi invece condannato PER SOMMA DI ART. 1.
Quindi Facchetti era peggio di Moggi.
Un’infamia totale. Una vergogna senza limiti.

Se lo dicono loro, allora è vero. Caspita, la realtà certe volte è molto meglio dei sogni

Come sembrare un hacker

inet Come sembrare un vero hacker

Si vedono di solito nei film e sono i classici hacker che battono sulla tastiera alla velocità della luce scrivendo del codice. Il sito hackertyper vi permette di fare un simpatico scherzo a qualche amico. Apritelo con il vostro browser, magari nascondendo la palette e gli strumenti tipici del browser, e chiamate il vostro amico. Non appena questo arriva alle vostre spalle, iniziate a battere a caso sulla tastiera e guardate il risultato!