2014-03-04

SSH без пароля

Это реально удобно.
Реальная ситуация - есть два сервера, с одного на другой каждую ночь нужно копировать некий файл. Чтобы ничего не монтировать, не настраивать nsf или samba cisf, можно использовать scp, предварительно проведя небольшую настройку.

Итак, первый сервер adonis01. С него будет копироваться файл на второй сервер ora8t1. На обоих серверах динозаврик SLES8SP3(OpenSSH_3.4p1, SSH protocols 1.5/2.0)

ssh root@adonis01
adonis01:~ # ssh-keygen -t rsa -b4096
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:                                                                                           
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:                                                                                                
12:23:56:78::ab:cd:ef:12:ee:56:4r:58:e2:d8:d1 root@adonis01

После этого в /root/.ssh появилось 2 файла - id_rsa и id_rsa.pub

adonis01:~ # scp /root/.ssh/id_rsa.pub root@ora8t1:/root/.ssh/id_rsa_adonis01

ssh root@ora8t1
ora8t1:~ # cat /root/.ssh/id_rsa_adonis01 >> /root/.ssh/id_rsa_remote
ora8t1:~ # mcedit /etc/ssh/sshd_config

PermitRootLogin yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/id_rsa_remote
HostbasedAuthentication no
UseLogin no
ChallengeResponseAuthentication no
X11Forwarding yes
UsePrivilegeSeparation no
Subsystem       sftp    /usr/lib/ssh/sftp-server

ora8t1:~ # /etc/init.d/sshd restart

Все, настроили.
Проверяем

ssh root@adonis01
adonis01:~ # ssh ora8t1 df -hl

Должны получить нужный результат. Все, теперь для scp ничего вводить не надо - все будет работать без паролей.

Комментариев нет: