Questa è la procedura da eseguire per connettere via ssh o eseguire scp serverA e serverB senza inserire la password
Avviso:
Non sono responsabile di danneggiamenti di alcun genere. Se seguite questa guida è a vostro rischio e pericolo.
ServerA
Per prima cosa bisogna generare le chiavi pubbliche e private
ATTENZIONE! Assicurarsi di non avere già le chiavi altrimenti verranno sostituite con quelle nuove. Controllare la loro presenza in /root/.ssh/
Generazione della chiave:
root@kali:~# ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Created directory '/root/.ssh'.
Enter passphrase (empty for no passphrase): (premere invio)
Enter same passphrase again: (premere invio)
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
77:c2:b2:59:7e:48:e1:bd:a9:c8:24:eb:ec:9a:18:2e root@kali
The key's randomart image is:
+–[ RSA 2048]—-+
| |
| |
| . |
| o o |
| S B o |
| O + o |
| . . + o + |
|E. o o = . o |
| .o o+= o . |
+—————–+
La chiave pubblica RSA è contenuta nel file /root/.ssh/id_rsa.pub
root@kali:~# cat /root/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCRlQnl7KMpOviNWRf9ckQWeCx59nUpc3kiZMkd9aaAMRZaVmA8BYs3UvZRvLr7fcxKAyZPWLvSEbV5YiQqkwq7/mgpnG7UsVLjxG5q00UF/QrqT97Mzo4w1WX+6kTtPIaJwqyjXRb+dn3E8NhKuAGwyTVz5CB3zoa7NiWBG/f+c8gtAeJXreABAn3biv3FJkCFVfQLBFWT90a/C3Da9qoRhqUlYqwn06NCrlsG1zzDy0ag5V7cxIkrRrEFiLTS/fsdSqEqmBCZGI2enSZYhmaCG11p5n0HMnjizPC3BxVEcD7UrZn5CizkVw0FqXCe54b4WLtFPfjR4Mu2th1hyCr root@kali
copiare la chiave begli appunti.
ServerB
Loggarsi al ServerB come root e copiare la chiave pubblica RSA del ServerA nel file /root/.ssh/authorized_keys del serverB.
root@serverB:~# vi /root/.ssh/authorized_keys
incollare la chiave pubblica in questo file. Se esiste un'altra chiave allora copiatela nella linea successiva.
Questo è un esempio di come il file authorized_keys dovrebbe essere:
root@serverB:~# cat /root/.ssh/authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDCRlQnl7KMpOviNWRf9ckQWeCx59nUpc3kiZMkd9aaAMRZaVmA8BYs3UvZRvLr7fcxKAyZPWLvSEbV5YiQqkwq7/mgpnG7UsVLjxG5q00UF/QrqT97Mzo4w1WX+6kTtPIaJwqyjXRb+dn3E8NhKuAGwyTVz5CB3zoa7NiWBG/f+c8gtAeJXreABAn3biv3FJkCFVfQLBFWT90a/C3Da9qoRhqUlYqwn06NCrlsG1zzDy0ag5V7cxIkrRrEFiLTS/fsdSqEqmBCZGI2enSZYhmaCG11p5n0HMnjizPC3BxVEcD7UrZn5CizkVw0FqXCe54b4WLtFPfjR4Mu2th1hyCr root@kali
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCwWtdgN2UAgYC54h6z+g1fMeKMjQug5G27FfNtzS4Dw++Awf6hOh6QNfkMjPsGMzq4wg3l7fkz+9Baux83eT9x1Go/t0g0gi2tpssem1Vskvqqn3zwpktWPSTrZMWobK690h9RUVmdirMcLAB+iS47JQMapm+dI9AsD5tX6B4uSrZGAvXhYApj/CZrRcrrTYrdRE2WC9tFTC3XrzibxNqMqWXXkD+tqdnJSnMg/Zhbq3EyB8wPdCNd2e+QqdS3LRhYdW02Z1IskwxZp8SA6xbA5FGjCdxYyXcyijtqEAi2m+oAA1wrFtwnXWc+SGh6z32bZPFa1Fu38r4cSI7F0Cu9 root@debian
Come è possibile vedere ci sono 2 chiavi pubbliche. Significa che 2 servers possono connettersi via ssh o scp senza password al ServerB.
Se nella directory root non è presente .ssh allora è possibile crearla con il seguente comando:
root@serverB:~# mkdir -p /root/.ssh/
Se non è presente authorized_keys nella directory .ssh allora è possibile crearla per poi copiare la chiave pubblica:
root@serverB:~# vi /root/.ssh/authorized_keys
Ora è possibile provare la connessione:
On serverA try to ssh in ServerB
root@kali:~# ssh root@serverB (o root@indirizzo_ip)
root@serverB:~# (questo è il prompt del ServerB)