9th febbraio 2010

Aggiornamento Esx UPDATE 5 firmware 213532

In questi giorni mi è capitato di dover aggiornare uno dei server Esxi a cui ho accesso.

Mi sono trovato a dover aggiornare il sistema da un Esx Update 3 ad un Esx Update 5 con firmware 213532.

Purtroppo mi sono imbattuto in un problema un po’ strano, durante l’aggiornamento tutto è andato a posto ma mi ha dato un errore molto strno al momento dell’aggiornamento del vmware tools.

Il messaggio molto generico è stato un “Unable to copy file to host”. Ho debuggato i log ma senza trovare nulla. Leggendo su forum ho trovato la soluzione.

A prescindere da tutto quelo che avete fatto dovete mettere il vostro Esx in Mantainence Mode, in questo stato riavviarlo, una volta riavviato procedete nuovamente con l’aggiornamento dei vmware tools e questa volta magicamente tutto funzionerà senza motivo.

Questo immagino capiti per qualche motivo in cui forse ci sono troppi file temporanei dovuto alle decompressioni degli zip, in questo modo con il riavvio in modalità manutenzione probabilmente vengono eliminati e al riavvio c’è spazio a sufficienza per effettuare le ultime operazioni.

Un consiglio, non aggiornate i vmware tools alla versione 213532 sulle vostre macchine virtuali linux, in quanto hanno parecchi problemi. Vi consiglio una volta arrivati alla versione 3.5 Update 5 di procedere con l’aggiornamento alle versione 4.0 Update 1.

Saluti

Il vostro Sysadmin

posted in Matteo, Temporini, howto, linux, networking, server, virtualizzazione, vmware | 0 Comments

4th agosto 2009

Plugin: NextGEN Gallery IE8 Freeze!!!

Parliamo oggi di un problema che si è presentato su uno dei siti con cui collaboro, nello specifico dopo gli ultimi update con l’installazione di ie8, il sito non poteva essere visto in quanto il plugin NextGEN Gallery, lo faceva crashare.

Tale problema è causata da alcune jquery errate nel codice (che speriamo vengano fixate a breve).

Sino ad allora ecco a voi il workaround

Inserite nel codice di wordpress nel codice di wordpress nel file header.php del vostro tema la stringa

<meta http-equiv=”X-UA-Compatible” content=”IE=EmulateIE7″>

in questo modo il sito viene fatto girare in compatibilità ie7 e il sito funziona perfettamente anche con ie8.

In alternativa qualora steste usando tale plugin altrove, potete inserire le seguenti righe di codice php per ovviare al problema:

1. if (strpos($_SERVER['HTTP_USER_AGENT'],“MSIE 8″)) {header(“X-UA-Compatible: IE=7″);}

2. if (strpos($_SERVER['HTTP_USER_AGENT'],“MSIE 8″)) {header(“X-UA-Compatible: IE=EmulateIE7″);}

Nel caso 1. fate girare il sito in compatibility mode ie7, nel secondo caso invece, lo fate girare con il motore standard di ie7.

posted in Internet, Matteo, howto, server, sicurezza, web, wordpress | 0 Comments

1st luglio 2009

Tuning Mysql: query sleep e wait_timeout

In questi giorni mi sono trovato ad affrontare un problema che mi era già capitato e che su altri sistemi avevo risolto in altro modo, cioè la presenza di query in stato di sleep.

Nello specifico per risolvere il problema ho trovato della documentazione su internet che diceva di modificare il valore della variabile wait_timeout, ma su Ubuntu non funziona …

A detto di molte guide per fare questo bastava editare il file my.cnf o my.ini per cambiarlo ma di fatto non funziona.

Leggendo la documentazione di mysql ho letto invece che la variabile wait_timeout dipende direttamente dalla variabile interactive_timeout, pertanto editando il file di configurazione di mysql come segue

[mysqld]

interactive_timeout = 30

In automatico modifichiamo sia la variabile interactive_timeout che la variabile wait_timeout

posted in Internet, Temporini, database, howto, linux, mysql, server, sicurezza, tuning, web | 0 Comments

26th giugno 2009

Exim4 e bypass dns

Oggi ho avuto una pizzola esigenza, dover bypassare la risoluzione dei dns da parte di exim4 per l’invio delle email.

La cosa è molto semplice, per farlo non basta editare il file /etc/hosts ma bisogna creare un file che si chiama

/etc/exim4/hubbed_hosts

e al suo interno aggiungere la lista dei domini per cui si vuole il bypass dell’ip

pippo.com: 1.2.3.4
pluto.com: 5.6.7.8

Saluti
Matteo

posted in Internet, Matteo, howto, linux, networking, server | 0 Comments

25th giugno 2009

Ftp: resume o non resume… questo è il problema

In questi ultimi anni spesso mi sono trovato di fronte a questo problema: il resume dei file caricati via ftp è una cosa che deve supportare il server o i client?

Sino ad oggi me ne sono altamente sbattuto della risposta, avendo ormai da anni per le mani connessioni molto stabili, ma per alcune esigenze di questi ultimi mesi ho dovuto affrontare di petto il problema.

La risposta che posso darvi per esperienza personale è che il problema del resume dei file è una combo violentissima server e client.

Nello specifico il server ftp deve supportare il trasferimento binario e allo stesso modo il client.

Ora come ora tutti tutti i server ftp e tutti i client ftp li supportano entrambi, premettendo che i server ftp di default li hanno abiitati entrambi, possiamo ricondurre il problema solo al client.

Quindi per supportare il ripristino dei file non ci resta altro da fare che impostare il trasferimento dei file in modalità binaria (o binary).

Saluti
Matteo

posted in Internet, Matteo, howto, linux, networking, server, sicurezza | 1 Comment

4th giugno 2009

Rootkit o non rootkit, questo è il problema…

Di cosa stiamo parlando? Alcuni di voi sicuramente sapranno che cosa sono i rootkit, per quelli che non lo sanno i rootkit sono delle “collezioni” di software utilizzate per amministrare una macchina linux senza possedere i privilegi di amministratore.

Solitamente vengono utilizzate dagli intrusi di un sistema, ad esempio un utente malevolo che riesce a sfruttare la vulnerabilità di un utente non privilegiato, potrebbe utilizzare un rootkit per procedere poi a una privilege escalation per diventare amministratore della macchina.

Per difendersi da questo tipo di utilizzi, la cosa migliore è cercare di tenere sempre aggiornato il sistema, soprattutto se si tratta di server online con accesso pubblico, quello di cui voglio occuparmi ora, non è tanto questo aspetto, ma è quello di controllare se la nostra macchina è stata “infettata” da un rootkit o meno.

A questo scopo ho iniziato ad utilizzare il programma rkhunter, che serve a controllare tramite degli hash, se i nostri file di sistema importanti sono stati in qualche modo modificati.

L’installazione in ubuntu si fa un semplice

apt-get install rkhunter

o

aptitude install rkhunter

Una volta installato il programma, procediamo con l’aggiornamento delle definizioni con il comando

rkhunter --update

ottenendo come output una cosa simile a:

[ Rootkit Hunter version 1.3.0 ]

Checking rkhunter data files...
Checking file mirrors.dat                                  [ No update ]
Checking file programs_bad.dat                             [ No update ]
Checking file backdoorports.dat                            [ No update ]
Checking file suspscan.dat                                 [ No update ]
Checking file i18n/cn                                      [ No update ]
Checking file i18n/en                                      [ No update ]
Checking file i18n/zh                                      [ No update ]
Checking file i18n/zhutf                                   [ No update ]

Ora facciamo partire la nostra prima scannata con il comando

rkhunter -c

questo metodo di scan ha una modalità interattiva, ad ogni particolare tipologia di scan dovrete premere enter, alla fine otterrete una tabella riassuntiva come quella seguente

System checks summary
=====================

File properties checks...
Files checked: 127
Suspect files: 0

Rootkit checks...
Rootkits checked : 110
Possible rootkits: 0

Applications checks...
Applications checked: 6
Suspect applications: 0

The system checks took: 3 minutes and 44 seconds

All results have been written to the logfile (/var/log/rkhunter.log)

One or more warnings have been found while checking the system.
Please check the log file (/var/log/rkhunter.log)

Per ottenere uno scan non intereattivo aggiungete l’opzione -sk alla fine

rkhunter -c -sk

Fra i vari report rkhunter vi segnalerà che avete abilitato l’accesso root via ssh, che di norma non è il massimo della siscurezza e vi darà un segnale di errore tipo questo

Checking for allowed root login... Watch out Root login possible. Possible risk!
info: "PermitRootLogin yes" found in file /etc/ssh/sshd_config
Hint: See logfile for more information about this issue

Se sapete cosa state facendo, per eliminarlo basta editare /etc/rkhunter.conf

e cambiate la riga da ALLOW_SSH_ROOT_USER=no a ALLOW_SSH_ROOT_USER=yes

Una volta che avete lanciato il primo scan e tutto è corretto e non vi sono state segnalazioni strane, lanciate il comando

rkhunter –propupd

Questo comando, aggiorna le tabelle hash dei vostri file, di modo che se vengono modificati in qualche modo verrete notificati al riguardo. Quando farete degli update che aggiornano i file interessato da rkhunter, noterete che vi verrà notificato il fatto che tali file sono cambiati. Solitamente quando fate gli aggiornamenti, se tutto è corretto, dovreste eseguire questo comando dopo l’aggiornamento, di modo che le tabelle hash per i check verranno aggiornate con i nuovi eseguibili e non riceverete (giustamente), notifiche al riguardo.

Saluti

posted in Internet, Matteo, Temporini, howto, linux, networking, rootkit, server, sicurezza | 5 Comments

23rd marzo 2009

Windows: Lista Utenti gruppo Active directory

Ebbene si, oggi parliamo di Windows (non temete è solo questione di pochi secondi)

Nello specifico vogliamo risolvere un problema abbastanza “spinoso”, che Active Directory non risolve immediatamente (ci sono alcuni tool esterni che lo fanno a dire il vero, ma noi vogliamo usare linux vero??), vogliamo avere la lista degli utenti inseriti in un gruppo.

Si lo so è assurdo, ma di default con l’interfaccia di windwos non è possibile farlo.

Presupposto per fare quanto segue è che abbiate joinato tramite samba e kerberos (net ads e company) il vostro dominio a una macchina linux e la cosa esula da questo how to.

Viste le premesse dalla nostra console linux non ci resta fare altro che lanciare

root@localhost# net rpc group members "GRUPPO" -S pdc.local -UAdministrator

Dove nello specifico

GRUPPO = nome del gruppo del quale volete la lista degli utenti

pdc.local = hostname del vostro Primary Domain Controller

Administrato = nome utente dello user con cui volete fare la query

posted in Active Directory, Microsoft, Primary Domain Controller, Windows, howto, networking, server, servizi | 0 Comments

6th febbraio 2009

Traffic Shaping: come ti limito la banda con tc e iptables

Questa sera ho avuto l’esigenza di fare un po’ di traffic shaping casalingo per un piccolo progetto.

Dovevo limitare la banda globale (quella globale non quella del singolo file scaricato), del server ftp.

Soluzione al problema due comandi linux: tc e iptables.

Lo script che ci permetterà di fare tutto è questo:

# Change this to your link bandwidth
# (for cable modem, DSL links, etc. put the maximal bandwidth you can
# get, not the speed of a local Ethernet link)
REAL_BW='20Mbit'

# Change this to the bandwidth you want to allocate to FTP.
# We're talking about megabits, not megabytes, so 80Kbit is
# 10 Kilobytes/s
FTP_BW='600Kbit'

# Change this to your physical network device (or 'ppp0')
NIC='eth0'

# Change this to the ports you assigned for passive FTP
FTP_PORT_LOW="10000"
FTP_PORT_HIGH="20000"

tc qdisc add dev "$NIC" root handle 1: cbq \
bandwidth "$REAL_BW" avpkt 1000

tc class add dev "$NIC" parent 1: classid 1:1 cbq bandwidth "$REAL_BW" \
rate "$REAL_BW" maxburst 5 avpkt 1000

tc class add dev "$NIC" parent 1:1 classid 1:10 cbq \
bandwidth "$REAL_BW" rate "$FTP_BW" maxburst 5 avpkt 1000 bounded

tc qdisc add dev "$NIC" parent 1:10 sfq quantum 1514b

tc filter add dev "$NIC" parent 1: protocol ip handle 1 fw flowid 1:10

iptables -t mangle -A OUTPUT -p tcp --sport 20:21 -j MARK --set-mark 1

iptables -t mangle -A OUTPUT -p tcp \
--sport "$FTP_PORT_LOW":"$FTP_PORT_HIGH" -j MARK --set-mark 1

Nel mio caso specifico, ho forzato il mio server ftp (pureftpd) ad utilizzare come porte in uscita un range che va dalla porta 10000 alla 20000 (questo lo si fa lanciando pureftpd con il parametro -p 10000:20000 oppure modificando direttamente il file di configurazione),  e su questo range ho effettuato lo shaping di banda, bloccandola di fatto a 600Kbit/s, circa 80KByte/s.

Evito di commentare lo script in quanto è già stato fatto in inglese.

Tratto da: http://download.pureftpd.org/pub/pure-ftpd/doc/FAQ

Saluti

Matteo

posted in Internet, Matteo, file sharing, firewall, howto, iptables, kernel, networking, server, servizi | 1 Comment

27th gennaio 2009

Virtual Users And Domains With Postfix, Courier, MySQL (Ubuntu 8.04 LTS 64bit)

Questa guida vuole essere una quick reference per installare un server di posta con antispam e gestione relativamente semplice di utenti e domini, tramite ubuntu 8.04 TLS 64bit.

Le feature principali sono:

- SMTP-AUTH e TLS

- password encrypted

- Amavisd, SpamAssassin e ClamAV

Read the rest of this entry »

posted in DNS, Domain Name System, Postfix, Ubuntu, apache, cyrus, hosting, howto, imap, mail, mysql, pop3, posta, server, servizi, sicurezza, smtp, virtualhost, web, webserver | 3 Comments

18th gennaio 2009

Team viewer : la risposta moderna ai vari VNC

Avete mai voluto dare assistenza a qualcuno che aveva un problema con il pc? Problema che avreste potuto risolvere in approssimativamente 5 minuti se foste stati li in loco davanti alla macchina?

La risposta di alcuni potrebbe essere “si certo basta installare un vnc”, però se non è già stato installato precedentemente, configurato opportunamente firewall e router e giochini simili, tutto questo è assai irrealizzabile.

Ecco la soluzione, si chiama TeamViewer, è un prodotto free se non utilizzato per fare business (se sperate di usarlo in azienda, basta pagare un piccolo obolo e siete liberi di usarlo anche li).

Funziona in un modo molto semplice, le due persone interessate scaricano il programma sui loro client e lo installano.

Una volta lanciato verrà generato un ID e una Password, ora non vi basterà che comunicare questi dati all’altro interlocutore per potergli permettere di poter amministrare il vostro pc da remoto, come se tutti i lavori di configurazione o simi per una vpn o un vnc fosserò già stati fatti.

E’ inoltre possibile registrarsi al sito gratuitamente per poter avere un itnerefaccia di amministrazione per controllare vari client, suddividerli per cliente o per gruppi e potere gestire al meglio la vostra assistenza.

Il programma presenta 4 aspetti importanti, permette infatti di:

- Chiedere supoprto remoto

- Fare “vedere” il proprio desktop (quindi senza dare possibilità all’altro di modificare qualcosa)

- Trasferire file

- Creare una VPN

Tutto il sistema penso funzioni tirando su delle vpn, bypassando in questo modo ogni eventuale sistema di sicurezza o blocco dovuto ai vari NAT o router del caso.

Al momento ho fatto alcune prove anche fra sistemi eterogenei (Windows e Mac funziona alla grande), solo in casi MOLTO particolari ha fatto cilecca.

L’unica pecca è che per ora è disponibile solo per Mac e Windows (gli utenti Linux lavorano via shell, quindi penso che non lo faranno mai), per il resto può tornare utile in moltissime situazioni,

Saluti
Matteo

posted in file sharing, howto, linux, mac, networking, openvpn, vpn | 5 Comments

  • Etichette

  • Statistiche