Introduzione
Se desideri eseguire il provisioning di un server Ubuntu 14.04, devi seguire alcuni passaggi importanti per configurarlo correttamente in modo da renderlo sicuro e farlo funzionare per lo scopo previsto. Questo articolo ti guiderà in questi passaggi uno per uno, dalla spiegazione di come accedere al tuo server per la prima volta alla sicurezza del tuo server con le chiavi SSH e tutto il resto.
Imposta chiavi SSH
Configurare la sicurezza basata su SSH per accedere al tuo server è un modo molto più efficace rispetto all'uso di una password di root manuale. È quasi impossibile violare il sistema di sicurezza di un VPS che dipende dalle chiavi SSH poiché protegge il tuo VPS in un modo più sofisticato mediante l'uso di chiavi codificate.
Come funzionano le chiavi SSH:
- Verrà generata una coppia di chiavi sul tuo PC locale.
- La generazione di una coppia di chiavi fornisce due lunghe stringhe di caratteri:una chiave pubblica e una privata.
- La chiave pubblica verrà aggiunta al tuo VPS.
- La coppia di chiavi private corrispondente verrà salvata sul tuo PC locale.
- Ogni volta che accedi al tuo VPS, il sistema SSH cercherà la coppia di chiavi private della chiave pubblica aggiunta ad esso. Il sistema si sbloccherà solo quando le due chiavi combaciano.
- Puoi anche disabilitare la password di root dopo aver configurato le chiavi SSH.
Assicurati di aggiungere la chiave pubblica ai server e la chiave privata viene salvata in una posizione sicura sul tuo PC.
Segui i passaggi indicati di seguito per configurare le chiavi SSH:
Fase 1:crea la coppia di chiavi RSA:
Apri il Terminale sul tuo PC
Immettere il seguente comando nel terminale:
ssh-keygen -t rsa
Fase 2:salva le chiavi e la passphrase
Il comando di generazione della chiave sopra riportato seguirà con un paio di domande:
Enter file in which to save the key (/home/user/.ssh/id_rsa):
Puoi premere Invio, che salverà le chiavi nella home dell'utente.
Enter passphrase (empty for no passphrase):
In questo passaggio, ti verrà richiesta una passphrase per proteggere la tua chiave privata. Ti consigliamo di aggiungere una passphrase poiché l'intero punto della configurazione di SSH è la sicurezza. Dovrai inserire la passphrase ogni volta che utilizzi la coppia di chiavi.
Se non vuoi una passphrase associata alla tua chiave privata, premi semplicemente invio lasciando vuoto il campo della passphrase.
Questo completerà il processo di generazione della chiave:
ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/demo/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/demo/.ssh/id_rsa. Your public key has been saved in /home/demo/.ssh/id_rsa.pub. The key fingerprint is: 4a:dd:0a:c6:35:4e:3f:ed:27:38:8c:74:44:4d:93:67 demo@a The key's randomart image is: +--[ RSA 2048]----+ | .oo. | | . o.E | | + . o | | . = = . | | = S = . | | o + = + | | . o + o . | | . o | | | +-----------------+
Nell'esempio sopra:
Posizione della chiave privata: /home/demo/.ssh/id_rsa
Posizione della chiave pubblica:/home/demo/.ssh/id_rsa.pub
Fase 3:copia il Chiave pubblica del tuo VPS
Ora puoi aggiungere la tua chiave pubblica al VPS su cui desideri configurare SSH.
Individua la chiave pubblica utilizzando il seguente comando
cat ~/.ssh/id_rsa.pub
Ora copia la chiave pubblica dal terminale selezionando la chiave e premendo Ctrl+Shift+c. Ora incolla la chiave pubblica nella casella Aggiungi chiavi SSH Aggiorna chiave SSH fornito in one.e2enetworks.com portale e fai clic su Aggiorna chiavi SSH.
Per riferimento, ecco come appare una chiave pubblica SSH.
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCviUTzL/IU709LbE2YhKzsgG90627HqTKOPJaqzWbxmk2rtDI5iymhY32RvTYot01uZONv+VuMjXZxcC0ev0Pz0ZOruEr6b+2B7dTywtWlRw7XpJznZt7AQKlAKWK4RVPxMuSsNP6jSD8h7SbelNIIpw+qnO7hhTkETu5AWEUEOuOQs4meFg1WJ/G5j43fmpXk22VjmctUiUKfVqNrTH6HbmklmYuX4DEE0x0Ekb8mHaI/cqO8MqAkgw99iGTMakYXO33RXRsu7Q/Ab93hQioE7PwXKyAXAyZe+vjL7YnHq7PvGnAPdVr1AJlUFSn7Vk7TLrGVq6nf3ua5G5WnY3Nb test@E2E-Networks
Accedi SSH come utente root
Per accedere come utente root al tuo server usa il comando seguente. Sostituisci server_ip_address con l'ip del tuo server
ssh root@server_ip_address
radice è il nome utente o l'account che per impostazione predefinita ha accesso a tutti i comandi e file su un sistema operativo Linux o altro simile a Unix. Viene anche indicato come account root, utente root e superutente.
Riceverai il seguente messaggio al tuo primo accesso al tuo server. Questo messaggio non verrà visualizzato dal prossimo accesso in poi fino a quando la chiave privata nel localhost non viene modificata. Digita sì e premi Invio per completare la procedura di accesso.
The authenticity of host '139.59.46.169 (139.59.46.169)' can't be established. ECDSA key fingerprint is SHA256:anOXWprBpD8Z4j/8d+MYOrhNb3wg9/I3Snd2Nhep7v4. Are you sure you want to continue connecting (yes/no)?
La directory .ssh dovrebbe avere 700 autorizzazioni e il file authorized_keys dovrebbe avere 400 o 600 autorizzazioni. Per modificare i permessi, usa i seguenti comandi:
$ cd $ mkdir .ssh && touch .ssh/authorized_keys $ chmod 700 .ssh/ && chmod 600 .ssh/authorized_keys $ cat id_rsa.pub >> .ssh/authorized_keys && rm id_rsa.pu
Creazione di un nuovo utente
Quando vuoi creare un nuovo utente diverso da root per accedere al server, usa il seguente comando
adduser test
Sostituisci test con il nome utente corrispondente che desideri impostare. Ora che hai un nuovo account utente all'interno del tuo server con privilegi di account regolari, a volte potrebbe essere necessario eseguire attività amministrative da questo account utente. Quindi è una buona opzione fornire anche i privilegi sudo a questo account. Per farlo basta eseguire il seguente comando nel terminale.
gpasswd -a test sudo
Ti verrà richiesto di inserire una nuova password per questo nuovo utente. Fornire una nuova password e ridigitare la password quando richiesto. Successivamente ti verrà richiesto di inserire alcuni altri dettagli di base come il tuo nome e numero. Puoi saltare questo passaggio premendo invio oppure puoi fornire i tuoi dati se lo desideri.
Accesso SSH per nuovo utente
Dal momento che hai già una chiave privata generata e distribuita per il tuo account root, è una saggia decisione proteggere anche il tuo nuovo account utente con la chiave SSH. Per fare ciò, disconnettiti dal server come utente root ed esegui semplicemente il seguente comando nel terminale, con xxx.xx.xx.xx sostituito dall'ip del tuo server.
ssh-copy-id [email protected]
Verifica l'azione intrapresa effettuando l'accesso come segue
ssh [email protected]
Se la chiave privata è stata distribuita correttamente nel nuovo account nel server, verrai registrato senza che ti venga richiesta la password.
Conclusione
Configurare il server in questo modo fornisce una base solida e sicura in anticipo per lo scopo previsto del server. Ora che il tuo server è attivo e accessibile, puoi ora distribuirvi i dati con la massima tranquillità, assicurandoti una maggiore sicurezza rispetto ai server protetti da password. Se vuoi esplorare l'aggiunta di regole firewall al tuo server, dai un'occhiata a questo articolo.