Cloud Computing - Istanze Linux con keypair
Come creare istanze cloud Linux con keypair
Il modo più sicuro per accedere ad un'istanza Linux da remoto è mediante una connessione SSH con sistema di autenticazione che usa keypair (coppie di chiavi, privata e pubblica https://it.wikipedia.org/wiki/Crittografia_asimmetrica)
È importante ricordare che
- la keypair dev'essere creata prima di lanciare l'istanza;
- la keypair non può essere associata in seguito.
Pertanto, prima di lanciare una istanza Linux è opportuno creare una keypair, a meno di non volerne usare una precedentemente creata; questa operazione è effettuabile dalla sezione Cloud Computing del pannello ServerMate, cliccando su Gestione Keypair.
Cliccare su Nuova per creare una nuova keypair; inserire il nome scelto per la chiave e premere Ok, come nell'immagine seguente.
La procedura di creazione si concluderà in pochi istanti. Di seguito la finestra popup che mostra la chiave privata, che sarà inviata anche alla casella di posta elettronica associata all’account in uso (l'email avrà oggetto Cloud Computing - Creazione Chiave Privata: nome chiave ed un allegato con estensione .pem da salvare sul PC locale).
In alternativa, è possibile creare un file contenente la chiave a partire dal popup mostrato; per farlo, selezionare e copiare tutto il testo contenuto tra -----BEGIN RSA PRIVATE KEY------ e -----END RSA PRIVATE KEY----- compresi, prestando attenzione a non copiare nè inserire alcuno spazio o carattere aggiuntivo. Incollare il testo così copiato nel blocco note o un qualsiasi altro editor di testo e salvare il tutto in un file con estensione .pem (esempio: test_key.pem).
La chiave privata non deve essere condivisa e/o pubblicata, in quanto consente l'accesso a tutte le istanze che la utilizzano. La keypair creata potrà essere associata a tutte le istanze create con l'account in uso.
A questo punto, quindi, è necessario creare un'istanza cloud a partire da una immagine Linux; fare click sull'icona Crea Nuova Istanza.
Individuare nell'elenco la distribuzione di Linux desiderata e cliccare sul bottone Crea Istanza corrispondente; verrà, quindi, visualizzata la finestra per inserire le caratteristiche dell'istanza, come nella figura seguente.
Inserire il nome dell'istanza, selezionare il flavor desiderato e la keypair creata in precedenza. Il bottone Crea istanza conclude la procedura guidata ed avvia la creazione dell'istanza da parte della piattaforma cloud computing di Hosting Solutions.
L'istanza appena creata sarà, infine, visualizzata nella sezione Cloud Computing del pannello ServerMate:
A questo punto, è possibile collegarsi all'istanza mediante console VNC (clic sul bottone Azioni) o, come in questo caso, attraverso la keypair. Le modalità di collegamento mediante keypair variano a seconda del sistema operativo utilizzato sul computer dal quale ci si collega.
Sistema operativo Windows
Utilizzare i programmi Puttygen e Putty rispettivamente per importare la chiave privata e
per effettuare la connessione all'istanza. È possibile scaricarli entrambi al seguente indirizzo
https://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
Eseguire Puttygen e cliccare su Conversions, Import Key
Cercare la chiave privata precedentemente salvata sul PC locale (es: test_key.pem) ed importarla cliccando su Apri per visualizzare la seguente schermata.
A discrezione dell'utente è possibile inserire sia un commento (Key comment) che una password (passphrase) per la key stessa. Cliccare ora su Save Private Key per salvare la chiave privata sul PC locale (file con estensione .ppk).
A questo punto avviare il programma Putty, individuare la casella Host Name (or IP Address) ed inserire l'indirizzo IP mostrato nella sezione Cloud Computing del pannello, in corrispondenza dell'istanza precedentemente attivata (es: 89.31.XX.XXX).
Cliccare ora su SSH (menu laterale), Auth e sul bottone Browse. Sfogliare il PC locale ed indicare la chiave privata precedentemente salvata (file con estensione .ppk).
Il bottone Open avvia la connessione all'istanza. Putty potrebbe presentare un messaggio di avviso sul fatto che non conosce l'host con il quale si sta cercando di stabilire una connessione. Cliccare in ogni caso sul bottone Sì per avviare la connessione: si sta semplicemente effettuando il collegamento all'istanza precedentemente creata.
A questo punto, una volta specificato il nome utente (ubuntu per le distribuzioni Ubuntu, root per le altre distribuzioni), si aprirà la shell dell'istanza. Da notare che utilizzando la keypair non è necessario inserire alcuna password, in quanto è l'associazione tra le due chiavi a garantire la sicurezza della connessione.
A questo proposito si ricorda nuovamente di non divulgare mai la chiave privata in quanto equivarrebbe a divulgare la password di accesso.
Sistema operativo Linux
Aprire una shell e raggiungere la cartella nella quale è stata salvata la chiave privata (ad es. test_key.pem). Per questioni di sicurezza, cambiare i permessi della chiave con il comando
chmod 600 test_key.pem
Eseguire il comando di connessione SSH e passare la chiave privata come parametro con il comando
ssh -i test_key.pem root@public-ip
Digitare Yes nel caso in cui venga chiesta conferma dell'autenticità dell'host.
Dopo queste operazioni il collegamento alla macchina è ultimato.
Per istanze di tipo Ubuntu, il nome utente da passare è ubuntu; quindi, in questo caso il comando sarà:
ssh -i test_key.pem ubuntu@public-ip