Installare hamachi come servizio su Ubuntu
Aggiornamento: la versione 0.9.9.9-20 sembra non funzionare più, vedere l’articolo “Installare il nuovo LogMeIn Hamachi su Ubuntu”
—
Hamachi è un client VPN gratuito per uso personale di facile configurazione ed uso, acquisito tempo fa da LogMeIn.
La versione Windows è stata portata alla versione 2 mentre la versione linux purtroppo è rimasta alla 0.9.9.9-20 creando alcuni problemi di connessione tra i due sistemi.
Comunque con alcuni accorgimenti è possibile anche far interagire in maniera discreta le due versioni.
Innanzitutto per l’installazione basta scaricare i sorgenti e dopo averli estratti procedere alla loro installazione
[bash]
wget http://files.hamachi.cc/linux/hamachi-0.9.9.9-20-lnx.tar.gz
tar xzvf hamachi-0.9.9.9-20-lnx.tar.gz
cd hamachi-0.9.9.9-20-lnx
sudo make install
[/bash]
A questo punto se vogliamo usarlo come utente è sufficiente usare i comandi
[bash]
sudo /sbin/tuncfg
hamachi-init
hamachi start
hamachi set-nick ‘Mio nome’
hamachi login
hamachi join ‘rete hamachi’
hamachi go-online ‘rete hamachi’
[/bash]
Invece se vogliamo ad esempio montarlo sul server linux multimediale di casa procediamo innanzi tutto a creare il profilo in /etc (oppure a copiare un profilo già creato in precedenza se vogliamo mantenere l’ip assegnato)
[bash]sudo hamachi-init -c /etc/hamachi[/bash]
dopodiché creiamo lo script di gestione come demone
[bash]sudo nano /etc/init.d/hamachi[/bash]
E scriviamo dentro
[plain]
#!/bin/sh
### BEGIN INIT INFO
# Provides: hamachi
# Required-Start: $remote_fs $syslog $network
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start hamachi at boot time
# Description: Starts up hamachi daemon. Networking is required.
### END INIT INFO
hamachi_start() {
echo "Starting hamachi…"
/sbin/tuncfg
/usr/bin/hamachi -c /etc/hamachi start
/bin/chmod 760 /var/run/tuncfg.sock
# /bin/chgrp hamachi /var/run/tuncfg.sock
}
hamachi_stop() {
echo "Stopping hamachi…"
killall tuncfg
/usr/bin/hamachi -c /etc/hamachi stop
}
hamachi_restart() {
hamachi_stop
sleep 1
hamachi_start
}
case "$1" in
‘start’)
hamachi_start
;;
‘stop’)
hamachi_stop
;;
‘restart’)
hamachi_restart
;;
*)
hamachi_start
esac
[/plain]
Ora basta caricare lo script che si avvii in automatico
[bash]sudo update-rc.d hamachi defaults[/bash]
Per eseguire i vari comandi di start, join, etc… citati precedentemente occorre ricordarsi sempre di indicare il percorso del profilo
[bash]sudo hamachi -c /etc/hamachi join ‘nome rete'[/bash]
Ora un piccolo accorgimento ancora nel caso uno avesse appunto sia una macchina linux con hamachi versione 0.9.9.9-20 che un Windows con la versione 2 di LogMeIn, le due versioni hanno problemi di stabilità di connessione ( o per lo meno è quello che ho riscontrato io ) dopo pochi secondi se non ci sono connessioni attive tra le due macchine si perde il collegamento ( si nota dal client Windows che il ‘pallino verde’ comincia a lampeggiare ).
Girando ho trovato questo piccolo tweak che risolve il problema, il trucco consiste nel creare un file di config e aggiungere un parametro di KeepAlive
[bash]
sudo touch /etc/hamachi/config
sudo nano /etc/hamachi/config
[/bash]
E inserire semplicemente
[plain]KeepAlive 10[/plain]
Nel mio caso non ho più riscontrato anomalie di connessioni (ovviamente funziona anche nel caso si usi come utente, in tal caso la cartella del profilo è di solito in /home/utente/.hamachi).