Ответ
Выполните эту команду (если у вас уже есть SSH-ключ, вы можете пропустить этот шаг):
ssh-keygen
Затем вам нужно будет скопировать новый ключ на свой сервер:
ssh-copy-id user@host## or if your server uses custom port no:ssh-copy-id "user@host -p 1234"
После копирования ключа войдите в компьютер по ssh в обычном режиме:
ssh user@host
Теперь вы можете войти в систему без ввода пароля с конкретного компьютера, на котором вы выполняли команды.
Пример
not-marco@rinzwind-desktop:~$ ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/home/not-marco/.ssh/id_rsa):Created directory '/home/not-marco/.ssh'.Enter passphrase (empty for no passphrase):Enter same passphrase again:Your identification has been saved in /home/not-marco/.ssh/id_rsa.Your public key has been saved in /home/not-marco/.ssh/id_rsa.pub.The key fingerprint is:b1:25:04:21:1a:38:73:38:3c:e9:e4:5b:81:e9:ac:0f not-marco@rinzwind-desktopThe key's randomart image is:+--[ RSA 2048]----+|.o= . oo. ||*B.+ . . ||*=o . o . || = . = ||. o S ||E. || o || . || |+-----------------+not-marco@rinzwind-desktop:~$ ssh-copy-id not-marco@servernot-marco@server's password:Now try logging into the machine, with "ssh 'not-marco@server'", and check in: ~/.ssh/authorized_keysto make sure we haven't added extra keys that you weren't expecting.
Объяснение
Это предполагает, что вы уже можете успешно подключиться к своему серверу через SSH.
Вам нужно будет сгенерировать пару ключей SSH, которая позволит вам идентифицировать себя как самого себя без использования пароля. При желании вы можете выбрать защиту ключей паролем, но это поле можно оставить пустым, что позволит получить доступ по SSH без пароля.
- Сначала создайте свою пару ключей SSH, выполнив
ssh-keygen
это создастid_rsa
иid_rsa.pub
файл. Тоpub
файл - это то, что хранится на серверах, закрытый ключ (id_rsa
) - это то, что остается с вами, и то, как вы идентифицируете себя. - Затем скопируйте открытый ключ на свой сервер с помощью
ssh-copy-id user@server
замените пользователя вашим удаленным пользователем, а сервер - DNS-именем компьютера или IP-адресом. Он запросит ваш пароль SSH, введите его, и если все завершится успешно, вы сможете получить доступ к компьютеру черезssh user@server
без необходимости ввода пароля.