Accesso remoto alle reti trusted FBK

Scopri come accedere alla rete trusted FBK da remoto. L’accesso dall’esterno alle reti FBK può avvenire con due diversi sistemi di VPN con i metodi descritti qui.

Accesso via JUMPHOST SSH

L'accesso alle workstation Linux interne è disponibile anche attraverso un  SSH Jump Host : jump.fbk.eu  utilizzando  autenticazione basata su chiavi.

Per accedere al servizio  si deve spedire la propria chiave pubblica ssh come allegato e-mail  a  [email protected] indicando nel soggetto : "SSH via jump host access request".   La chiave deve essere in formato openssh format ed il file deve avere nome: <fbk_login_name>.pub. La stessa chiave va inserita in  ~/.ssh/authorized_keys  del computer destinazione per evitare ulteriori richieste di password. Le chiavi ssh-dss (DSA) non sono supportate a causa della loro debolezza. Per la massima compatibilità usare le chiavi RSA.

Linux/Unix/Mac openssh

Da Windows 10 1803 in poi, openssh è installato per impostazione predefinita. Per le versioni precedenti a Windows 10 1803, deve essere installato. La directory di configurazione .ssh si trova in $ENV:HOMEPATH/ per powershell o %HOMEPATH% per cmd. Vedi config_jump_w10 come esempio di file di configurazione ssh di Windows 10.

Per accedere a <hostname>.fbk.eu con la propria chiave pubblica di default (usualmente id_rsa.pub ) il comando ssh e':

                     ssh -J <fbk_login_name>@jump.fbk.eu <fbk_login_nam>@<hostname>.fbk.eu
second line
                  

Per utilizzare una diversa chiave ssh (jump_key) la sintassi del comando è:

Una soluzione più flessibile è creare un file di configurazione separato, config_jump:

                     #
# Define the jumphost
#
Host fbkjumphost
  Hostname jump.fbk.eu
  User <fbk_login_name>
#
# Specify a non default private key
#
  IdentityFile ~/.ssh/private_key_file
#
# Match all host except jumphost
#
Host * !fbkjumphost
 Hostname %h
#
# Force user name
#
 User <fbk_login_name>
#
# Specify a non default private key
#
 IdentityFile ~/.ssh/private_key_file

                  

Proxy fbkjumphost da utilizzare nel comando con

                     ssh -F config_jump <hostname>.fbk.eu</hostname>

                  

NB: -J, -o, -F devono precedere ogni altra opzione

Linux/Unix/Mac/Windows10 scp

La sintassi della copia via ssh (Secure copy) con la chiave di default è:

                     scp -o ProxyJump=<fbk_login_name>@jump.fbk.eu local_patch  <fbk_login_name>@<hostname>.fbk.eu:remote_path

                  

mentre con una chiave pubblica separata il comando diventa

                     scp -o ProxyCommand="ssh -i  ~/.ssh/jump_key   -W %h:22 <fbk_login_name>@jump.fbk.eu" - i~/.ssh/jump_key  local_path <fbk_login_name>@<hostname>.fbk.eu:remote_path local_path

                  

Più semplice è la copia via file di configurazione config_jump:

                     scp -F config_jump local_path <fbk_login_name>@<hostname>.fbk.eu:remote_path
                  

NB: -o, -F devono precedere ogni altra opzione

Linux/Unix/Mac/Windows10 rsync

Per utilizzare il remote sync con la chiave di default, di deve aggiungere al comando  rsync:

                     --rsh "ssh -J <fbk_login_name>@jump.fbk.eu -l <fbk_login_name>"
                  

Per utilizzare il remote sync con una chiave diversa:

                       --rsh "ssh -o ProxyCommand='ssh -i  ~/.ssh/jump_key   -W %h:22 <fbk_login_name>@jump.fbk.eu'  - i ~/.ssh/jump_key -l <fbk_login_name>"

                  

Il remote sync con file configurazione richiede di aggiungere al comando rsync:

                       --rsh "ssh -F config_jump"
                  

Generazione chiavi SSH Linux/Mac/Windows

Il processo prevede la generazione di una coppia di file di chiavi SSH contenenti una chiave privata e una chiave pubblica. La chiave privata deve essere conservata solo nel computer dell'utente; la chiave pubblica verrà distribuita ai server remoti. Gli utenti devono prestare particolare attenzione a non perdere la chiave privata. Una chiave privata persa non può essere replicata; pertanto, l'utente non può accedere al server remoto fino a quando non viene generata una nuova coppia di chiavi e ridistribuita la chiave pubblica.

Per creare e salvare i file delle chiavi SSH da una shell o da un Terminale, si utilizza il comando ssh-keygen; vedi l'esempio seguente:

test @ demo: ~ $ ssh-keygen

  Generazione di coppie di chiavi rsa pubbliche / private.

  Inserisci il file in cui salvare la chiave (/home/test/.ssh/id_rsa):

  Directory creata '/home/test/.ssh'.

  Inserisci passphrase (vuoto per nessuna passphrase)

Le chiavi vengono salvate in una  posizione predefinita ( $HOME/.ssh/id_rsa) o, se ne è stata specificata uno, con un nome diverso. La chiave pubblica ha il suffisso .pub.

La passphrase è una password locale per proteggere ulteriormente la chiave privata e non viene mai inviata al server remoto. Se una chiave privata viene rubata è inutile senza la passphrase. Una passphrase vuota è fortemente scoraggiata.

Usare il comando man ssh-keygen per ulteriori informazioni.

Ulteriori riiferimenti

Istruzioni più dettagliate si possono trovare in Jump Hosts -- Passing Through a Gateway, con   man ssh  and man ssh_config  sotto linux o ricercando con Google "ssh jump host".

Windows openssh

Da Windows 10 1803 in poi, openssh è disponibile come riga di comando. Può essere avviato da cmd.exe o powershell.exe. Suggeriamo di installare il nuovo terminale da Microsoft: https://github.com/microsoft/terminal disponibile anche da Microsoft Store.

Windows Putty

Su Windows 10/11 consigliamo di utilizzare il client openssh integrato.

PuTTY  puo' utilizzare il jump host con la sua utility plink.exe utility. Per configurare il jump host:

  • Una sola volta in un shell CMD lanciare plink.exe <fbk_login_name>@jump.fbk.eu, memorizzare la chiave ed ignorare il messaggio di errore: Fatal Error.
  • Caricare la chiave ssh di accesso in Pageant.

Aprire in PuTTY  una New Session. In  Session , inserire  Host Name (or IP address)  (<hostname>.fbk.eu)  e  Port (22) o del host destinazione .

  • Sotto Connection, selezionare Proxy, sotto Proxy type selezionare Local. Aggiungere jump.fbk.eu sia in Proxy Hostname che in Exclude Hosts/IPS
  • Nella stessa schermata Proxy, aggiungere il proprio <fbk_login_name> come Username ( il campo Password è ignorato);
  • Cancellare il contenuto di Telnet command, or local proxy command e sostituirlo con:
                     plink.exe %user@%proxyhost -agent -nc %host:%port
                  

%user viene sostituito da  Username , %proxyhost da  Proxy Hostname , %host da  Host Name (or IP address).

 Per una descrizione completa di Putty  vedere Putty.

Generazione chiavi SSH con Putty

Per la generazione ed utilizzo delle chiavi ssh in Putty sotto windows: Use SSH Keys With PuTTY On Windows oppure https://www.ssh.com/ssh/putty/windows/puttygen

La chiave pubblica utilizzata dal Jump Host  deve essere in formato SSH. In PuTTYgen, copiare il contenuto del campo "Public key for pasting into OpenSSH authorized keys file" (Chiave pubblica da incollare nel file delle chiavi autorizzate OpenSSH) e salvarlo su un file; questa è la chiave pubblica.

Windows WinSCP

WinSCP puo' importare ed utilizzare  Putty configurations.

Ogni configurazione JumpHost di Putty viene trasformata nell'importazione in una configurazione scp via JumpHost con WinSCP. 

Come per Putty  la chiave ssh deve essere prima inserita in Pageant.

La configurazione manuale di  JumpHost  si trova in  Advanced Site Settings, sezione Connection->Proxy

Windows MobaxTerm