Magazine Tecnologia

Configurazione ssh lato server e client con ip dinamico

Creato il 17 ottobre 2012 da Ingalex @ingalex81

Configurazione ssh lato server e client con ip dinamico

Cari lettori in questa guida che vi propongo vedremo brevemente:

  • come configurare su server e su client ssh
  • come associare l’ip dinamico ad un dominio fisso
  • come connettersi da remoto al pc server tramite connessione ssh

Prima di tutto installate ssh sul pc server eseguendo:

sudo apt-get install ssh openssh-server

mentre sul pc client eseguite:

sudo apt-get install openssh-client

La porta standard impostata per le connessioni ssh è la 22. Spesso però nelle reti aziendali o universitarie la porta 22 è bloccata in uscita, pertanto molti consigliano di utilizzare la porta 443 generalmente riservata per il protocollo https. La porta 22 è settata nel file di configurazione di ssh (/etc/ssh/sshd_config) e se intendete modificarla potete modificare il file con un editor di testo con i permessi di root (con nano, kate, gedit, geany o l’editor che preferite):

sudo kate /etc/ssh/sshd_config

Prima di effettuare modifiche a questo file per sicurezza ne facciamo una copia di backup e lo proteggiamo in scrittura eseguendo:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original sudo chmod a-w /etc/ssh/sshd_config.original

Quindi modificate la riga:

Port 22

in:

Port 443

Una volta editato e salvato il file per applicare le modifiche riavviamo ssh eseguendo: sudo service ssh restart Ovviamente tale modifica va applicata sia sul server che sul client in modo tale che utilizzino la stessa porta. Se il server si trova dietro ad un router dobbiamo ricordarci di aprire la porta 443 per i protocolli TCP e UDP relativamente al host del server. Una volta configurati il server e il client i comandi per loggarsi dal client sul server tramite terminale sono:

ssh username@ip

oppure:

ssh ip -l username

oppure:

ssh ip -l username 22

dove l’username è quello dell’utente presente sul server, mentre l’ip è quello pubblico del server, se direttamente collegato alla rete, oppure quello pubblico con cui si connette il router. Il problema è che per quanto riguarda le connessioni domestiche gli ip sono dinamici, pertanto generalmente dopo una disconnessione l’ip che viene assegnato alla successiva connessione sarà diverso dal precedente. Quindi per utilizzare la connessione ssh dobbiamo conoscere di volta in volta l’ip.In alternativa esistono dei server dns gratuiti che consentono di associare degli ip ad un dominio fisso. Alcuni di questi sono:

In questo post abbiamo considerato a scopo illustrativo il servizio offerto da dyndns.it e vedremo come configurare ddclient per utilizzare dyndns.it. Prima di tutto create un account su dyndns.it o sul sito che preferite. ddclient è un client compatibile con dyndns.it scritto in Perl e presente nei repository Debian e distribuzioni derivate. ddclient prevede molte opzioni e risulta facilmente adattabile a qualsiasi casistica. ddclient consente di segnalare al server dns le variazioni di ip del  server ssh. L’installazione di ddclient può essere effettuata eseguendo da terminale semplicemente:

sudo apt-get install ddclient

I parametri richiesti da impostare per configurare ddclient in fase di installazione sono:

  • other come tipo di dyndns
  • dyndns2 come protocollo
  • dyndns.it come sito per l’aggiornamento
  • proprio username, password e nomehost da aggiornare

A prescindere dai parametri inseriti in fase di installazione, il file di configurazione di ddclient è presente in /etc/ddclient.conf. E’ necessario editarlo con un editor di testo impostando la configurazione standard riportata di seguito che può andare bene nella maggior parte dei casi:

# /etc/ddclient.conf

protocol=dyndns2
use=web, web=checkip.dyndns.it
server=dyndns.it
login=PROPRIO_USERNAME
password='PROPRIA_PASSWORD'
NOME_HOST

Dopo aver salvato il file di configurazione potete verificare la correttezza della configurazione eseguendo:

sudo ddclient --debug

e verificare che tutti i parametri siano corretti:

DEBUG: proxy =

DEBUG: url = checkip.dyndns.it

DEBUG: server = checkip.dyndns.it

DEBUG: get_ip: using web, checkip.dyndns.it reports <indirizzo ip server ssh>

Infine eseguiamo nuovamente il demone in modo che invii in modo autonomo gli aggiornamenti:

/etc/init.d/ddclient restart

Bisogna ricordare inoltre che per chi non ha dimestichezza col terminale esistono anche delle pratiche gui per stabilire delle connessioni ssh come per esempio:

Esiste anche un addon per Firefox in javascript chiamato firessh che fornisce una interfaccia grafica per ssh integrata in Firefox.

Lo stesso filezilla supporta le connessioni ssh oltre che ftp per il trasferimento dei file. Però onestamente in questo caso ritengo che l’utilizzo di una gui sia un inutile spreco di risorse.

Vi ricordo inoltre che per installare ssh può essere utilizzato anche tasksel, ma onestamente trovo più semplice e veloce farlo nel modo descritto nella guida.


Potrebbero interessarti anche :

Ritornare alla prima pagina di Logo Paperblog

Possono interessarti anche questi articoli :