Installare hamachi su debian lenny x86 x64 come server e client

Da Guide@Debianizzati.Org.
Vai alla navigazione Vai alla ricerca
Debian-swirl.png Versioni Compatibili

ERRORE: valore non valido ( Debian Etch 4.0
Debian Lenny 5.0
Debian Squeeze
Debian Sid )! Vedi qui.

Prerequisiti

Hamachi per Linux richiede necessariamente la presenza di alcune librerie in una data versione. Siccome Debian, da Lenny in poi, ha versioni più aggiornate, dovremo creare dei symlink per ingannare il programma. Scarichiamo innanzitutto le librerie richieste:

# apt-get install libstdc++5 libssl-dev libssl0.9.8

Quindi creiamo i symlink corretti:

# ln -s /usr/lib/libssl.so.0.9.8 /usr/lib/libssl.so.0.9.7
# ln -s /usr/lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.so.0.9.7
# ln -s /lib/libgcc_s.so.1 /usr/lib/libgcc_s.so.1

Installare Hamachi

Hamachi è un potente software per creare e amministrare in modo semplice ed intuitivo sicure reti VPN (Virtual Private Network).
Potete scaricare Hamachi da qui.
Per procedere all'installazione occorre innanzitutto scompattare l'installer:

# tar xzf hamachi-0.9.9.9-20-lnx.tar.gz

Quindi spostiamoci nella directory appena scompattata

# cd hamachi-0.9.9.9-20-lnx</b>

ed installiamolo

# make install

Configurare Hamachi in modalità Server

Una volta installato, Hamachi richiede che sia lanciato il demone tuncfg con i privilegi di root:

# /sbin/tuncfg

Infine occorre inizializzare il programma. Questo passo genera le chiavi crittografiche e crea la directory dove Hamachi salverà i dati delle reti VPN che creeremo.

# hamachi-init -c /etc/hamachi

È stato scelto lo switch -c per impostare una directory di sistema come directory di default dove hamachi salverà i dati delle sue configurazioni. Questo permette ad Hamachi di essere utilizzato da più utenti.
Al contrario, il comando di inizializzazione suggerito dalla guida ufficiale di Hamachi

# hamachi-init

salva i dati nella home directory dell'utente che ha lanciato il comando, e crea quindi una configurazione di Hamachi esclusiva per l'utente attivo.

Avviare Hamachi

Per avviare Hamachi occorre far partire il suo demone:

# hamachi -c /etc/hamachi start

Si noti che anche in questo caso, come nel resto della guida, è stato specificato il percorso della directory in cui sono presenti i files di configurazione di Hamachi.
Per arrestare il servizio useremo il comando:

# hamachi stop

Per portare il demone online occorre eseguire il comando:

# hamachi -c /etc/hamachi login

Viceversa, per portarlo offline si userà il comando:

# hamachi -c /etc/hamachi logout

Come ultima operazione impostiamo il nickname con cui il nostro PC apparirà nelle reti Hamachi:

# hamachi -c /etc/hamachi set-nick VOSTRO_NICKNAME

Creazione e amministrazione delle reti VPN

Per creare una nuova rete VPN:

# hamachi -c /etc/hamachi create $NOMERETE

(vi verra chiesto di creare la password per la rete).
Per unirsi ad una rete esistente:

# hamachi -c /etc/hamachi join $NOMERETE

(vi verra chiesto di inserire la password della rete).
Per andare on-line nella rete appena creata o nella rete cui ci siamo uniti:

# hamachi -c /etc/hamachi go-online $NOMERETE

Avviare Hamchi come servizio di sistema

Per avviare automaticamente Hamachi creeremo ora uno script da inserire nella directory di sistema /etc/init.d/:

# nano /etc/init.d/autohamachi

Il contenuto da inserire nello script:

#!/bin/sh
####################################
#dir:/etc/init.d                   #
#script avvio hamachi              #
#testato su debian lenny x86_x64   #
####################################

### BEGIN INIT INFO
# Provides:          defaultdaemon
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start daemon at boot time
# Description:       Enable service provided by daemon.
### END INIT INFO

case "$1" in
        start)
                echo "Starting Hamachi"

                # Avvio l'interfaccia di rete
                /sbin/tuncfg

                # Effettuo l'avvio di Hamachi
                /usr/bin/hamachi -c /etc/hamachi start

                # Effettuo il login ad Hamachi
                /usr/bin/hamachi -c /etc/hamachi login

                exit 1          
                ;;
         stop)
                echo "Stopping Hamachi"

                # Effettuo lo stop di Hamachi
                /usr/bin/hamachi -c /etc/hamachi stop

                # Fermo l'interfaccia di rete
                killall -9 tuncfg

                exit 1
                ;;
      restart)
                echo "Stopping Hamachi"

                # Effettuo lo stop di Hamachi
                /usr/bin/hamachi -c /etc/hamachi stop

                # Fermo l'interfaccia di rete
                killall -9 tuncfg

                sleep 1

                echo "Starting Hamachi"

                # Avvio l'interfaccia di rete
                /sbin/tuncfg

                # Effettuo l'avvio di Hamachi
                /usr/bin/hamachi -c /etc/hamachi start

                # Effettuo il login ad Hamachi
                /usr/bin/hamachi -c /etc/hamachi login

                exit 1
                ;;
            *)
                echo "Usage: /etc/init.d/autohamachi {start|stop|restart}"
                exit 1
                ;;
esac

exit 0

Quindi rendiamo il nostro script eseguibile

# chmod +x /etc/init.d/autohamachi.sh

e configuriamo il sistema per eseguire lo script all'avvio

# update-rc.d autohamachi.sh defaults 16

Adesso hamachi è pronto per partire come servizio di sistema.

Avviare e configurare Hamachi in modalità Client

Come alternativa all'installazione di un servizio, possiamo configurare hamachi per essere utilizzato in modalità client, come un qualsiasi altro programma. Una volta installato, Hamachi richiede che sia lanciato il demone tuncfg con i privilegi di root:

# /sbin/tuncfg

Quindi inizializziamo il programma:

$ hamachi-init

Avviamo il client Hamachi

$ hamachi start

Effettuiamo il login ad Hamachi

$ hamachi login

Creiamo una nuova rete

$ $hamachi create $NOMERETE

Oppure uniamoci ad una rete già esistente

$ hamachi join $NOMERETE

Mandiamo on line la rete appena aggiunta

$ hamachi go-online $NOMERETE

Elenco comandi

Ecco una descrizione dei comandi di hamchi, tratta da hamachi -help

             #  start [debug]                           # avvia Hamachi

             #  stop                                    # ferma Hamachi

             #  set-nick <nickname>                     # imposta il nick per Hamachi

             #  login                                   # effettua il login di Hamachi

             #  logout                                  # effettua il logout di Hamachi

             #  list                                    # mostra le reti e i PC connessi ad esse
                                                          legenda per list:
                                                          se non cè nulla il pc è offline
                                                          se cè una X il pc è online ma con una pessima connessione
                                                          se cè un * il pc è online e la qualità della connessione è buona

             #  get-nicks                               # recupera i nick dei pc connessi

             #  create <network> [<password>]           # crea una nuova rete e ne imposta la password

             #  delete <network>                        # elimina una rete (solo se creata da voi)

             #  evict  <network> <5.x.x.x>              # impedisce la connessione ad un ip in una rete

             #  join   <network> [<password>]           # entra in una rete

             #  leave  <network>                        # lascia una rete

             #  go-online <network>                     # va online in una rete

             #  go-offline <network>                    # va offline in una rete 



Ferdybassi
Atomix