English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Guida alla configurazione SSH senza password in CentOS 6.5

Testo principale

0. Spiegazione

Per facilitare l'esposizione del problema, supponiamo di avere due host A e B installati con CentOS 6.5. Lo scopo è realizzare che i due host A e B possano connettersi senza password l'uno all'altro tramite ssh. Il processo di configurazione è lo stesso per diversi host, qui viene descritto il processo di configurazione dell'host A.

Creare un nuovo utente: useradd linuxidc

Impostare la password: passwd linuxidc, inserire la password desiderata e poi eseguire su linuxidc per cambiare utente

Modificare il nome host: aggiungere hostname=master a /etc/sysconfig/network, dopo aver disconnesso il sistema, vedrete che la modifica è stata eseguita con successo

Modificare il file hosts:

vim /etc/hosts 
192.168.88.101 master 
192.168.88.102 slave1

1. Configurazione dell'ambiente

1.1 Disabilitare il firewall (permessi root)

CentOS 6.5 è molto rigoroso nel gestire la rete, è necessario disabilitare SELinux. Andare in /etc/selinux/config e modificare SELINUX=enforcing in SELINUX=disabled. Richiede permessi di root.

# su root

Password:

$ vim /etc/selinux/config

Trovare SELINUX e modificarlo in SELINUX=disable

1.2 Modificare il file di configurazione sshd (permessi root)

$ vim /etc/ssh/sshd_config

  Trovare il seguente contenuto e rimuovere i commenti "#"

RSAAuthentication yes
  PubkeyAuthentication yes
  AuthorizedKeysFile .ssh/authorized_keys

1.3 Riavviare il servizio sshd (permessi root)

$ /sbin/service sshd restart

2. Generare la chiave pubblica e privata nel computer

Passare da root all'utente linuxidc da connettersi senza password, eseguire il comando.

# ssh-keygen -t rsa

Per default, vengono generati due file nella directory home dell'utente linuxidc (~/.ssh/):

id_rsa: Chiave privata

id_rsa.pub: Chiave pubblica

3. Importare la chiave pubblica nel file di autenticazione

3.1 Importare nel computer

# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

Completato questo passaggio, modifica i permessi dei file relativi secondo la step 4 per accedere senza password al computer locale. Puoi verificare con i seguenti comandi.

ssh localhost

Se riesci a accedere, significa che la verifica è riuscita.

3.2 Importa nel host di destinazione

3.2.1 Operazioni sul computer locale, trasmissione al host di destinazione

# scp ~/.ssh/id_rsa.pub root@ip_o_nome_host_di_destinazione:/home/id_rsa.pub

Attenzione: durante la trasmissione del file al host di destinazione, utilizza l'utente root, altrimenti verrà rifiutato per mancanza di permessi. Dopo aver inserito la password del host di destinazione, compare OK, il che significa che la trasmissione è avvenuta con successo.

3.2.2 Accedi al host di destinazione e importa la chiave pubblica nel file di autenticazione

Utilizza il nome utente linuxidc per accedere al host di destinazione. Poi esegui le seguenti operazioni.

# cat /home/id_rsa.pub >> ~/.ssh/authorized_keys

Riapplica i permessi dei file relativi secondo la step 4 per completare l'impostazione dell'accesso senza password.

4. Modifica i permessi dei file relativi

# chmod 700 ~/.ssh
# chmod 600 ~/.ssh/authorized_keys

Fino a questo punto, è stato completato l'impostazione dell'accesso senza password.

5. Test

Macchina A (linuxidc@master), macchina B (linuxidc@slave1). Sul computer A, cambia utente in linuxidc e esegui i seguenti comandi per il test:

ssh slave1

Di seguito è riportato il tutorial di configurazione dell'accesso SSH senza password in CentOS 6.5 che ho introdotto per voi, spero che sia utile. Se avete qualsiasi domanda, lasciate un commento e risponderò prontamente. In questo senso, ringrazio anche tutti i sostenitori del sito di tutorial di grida.

Ti potrebbe interessare