Installare hamachi su debian lenny x86 x64 come server e client

Da Guide@Debianizzati.Org.
Versione del 14 mag 2015 alle 16:12 di HAL 9000 (discussione | contributi) (da adottare)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)
Vai alla navigazione Vai alla ricerca
Guida da adottare! Bannermv.png


Debian-swirl.png Versioni Compatibili

Tutte le versioni supportate di Debian

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

In caso di sistema a 64bit è inoltre necessario:

# apt-get install lib32gcc1

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 file 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 verrà chiesto di creare la password per la rete).
Per unirsi ad una rete esistente:

# hamachi -c /etc/hamachi join $NOMERETE

(vi verrà chiesto di inserire la password della rete).
Per andare online nella rete appena creata o nella rete cui ci siamo uniti:

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

Avviare Hamachi 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

e configuriamo il sistema per eseguire lo script all'avvio:

# update-rc.d autohamachi 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 online la rete appena aggiunta:

$ hamachi go-online $NOMERETE

Elenco comandi

Ecco una descrizione dei comandi di Hamachi, 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 




Guida scritta da: Atomix Swirl-auth20.png Debianized 20%
Estesa da:
Ferdybassi
Verificata da:

Verificare ed estendere la guida | Cos'è una guida Debianized