Вам нужен ваш открытый ключ SSH, и вам нужен ваш личный ключ ssh. Ключи могут быть сгенерированы с ssh_keygen
. Закрытый ключ должен храниться на сервере 1, а открытый ключ должен храниться на сервере 2.
Это полностью описано на странице openssh, поэтому я процитирую многое из этого. Вам следует прочитать раздел «Аутентификация». Также руководство openSSH должно быть действительно полезным: http://www.openssh.org/manual.html
Пожалуйста, будьте осторожны с ssh, потому что это влияет на безопасность вашего сервера.
От man ssh
:
~/.ssh/identity
~/.ssh/id_dsa
~/.ssh/id_rsa
Contains the private key for authentication. These files contain
sensitive data and should be readable by the user but not acces-
sible by others (read/write/execute). ssh will simply ignore a
private key file if it is accessible by others. It is possible
to specify a passphrase when generating the key which will be
used to encrypt the sensitive part of this file using 3DES.
~/.ssh/identity.pub
~/.ssh/id_dsa.pub
~/.ssh/id_rsa.pub
Contains the public key for authentication. These files are not
sensitive and can (but need not) be readable by anyone.
Это означает, что вы можете хранить свой закрытый ключ в своем домашнем каталоге в .ssh. Другая возможность - указать ssh через -i
параметр switch использовать специальный файл идентификации. Также из man ssh
:
-i identity_file
Selects a file from which the identity (private key) for RSA or
DSA authentication is read. The default is ~/.ssh/identity for
protocol version 1, and ~/.ssh/id_rsa and ~/.ssh/id_dsa for pro-
tocol version 2. Identity files may also be specified on a per-
host basis in the configuration file. It is possible to have
multiple -i options (and multiple identities specified in config-
uration files).
Это для закрытого ключа. Теперь вам нужно ввести ваш открытый ключ на сервере 2. Снова цитата из man ssh
:
~/.ssh/authorized_keys
Lists the public keys (RSA/DSA) that can be used for logging in
as this user. The format of this file is described in the
sshd(8) manual page. This file is not highly sensitive, but the
recommended permissions are read/write for the user, and not
accessible by others.
Самый простой способ добиться этого - скопировать файл на сервер 2 и добавить его в файл authorized_keys:
scp -p your_pub_key.pub user@host:
ssh user@host
host$ cat id_dsa.pub >> ~/.ssh/authorized_keys
Для демона ssh должна быть разрешена авторизация через открытый ключ, см man ssh_config
. Обычно это можно сделать, добавив следующую инструкцию в файл конфигурации:
PubkeyAuthentication yes
ssh-copy-id user@machine