Я испытываю затруднения при установке соединения SSH между двумя моими ноутбуками. Я попробовал различные решения, отправленные онлайн, но ничто не работало. Так как я являюсь довольно новым с SSH, я мог бы пропускать что-то важное. Я использую Ubuntu 14.04 LTS на клиенте и Ubuntu 16.04 LTS на сервере.
Вот шаги, которые я выполнил:
На клиенте:
Указанные параметры конфигурации хоста в ~/.ssh/config:
Хост [имя хоста]
User [username]
Hostname [IP address of host]
ServerAliveInterval 10
Сгенерированный ключ RSA путем выполнения:
ssh-keygen-t rsa-b 4096-o-a 100
Я предоставил пароль к ssh-keygen. Закрытый ключ был сохранен в ~/.ssh/id_rsa, тогда как открытый ключ был сохранен в ~/.ssh/id_rsa.pub
Я вручную скопировал ~/.ssh/id_rsa.pub во флеш-карту.
На данном этапе режимы файла следующие:
В ~/.ssh:
-rw-rw-r-- config
-rw------- id_rsa
-rw-r--r-- id_rsa.pub
На сервере:
установленный openssh-сервер;
созданный новый файл ~/.ssh/authorized_keys путем выполнения следующим образом
кошка/media/daniele/disk/id_rsa.pub>> ~/.ssh/authorized_keys
- rw-rw-r-
в/etc/ssh/sshd_config
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile %h/.ssh/authorized_keys
PasswordAuthentication yes
Наконец, на клиенте, когда я пробую:
ssh [username]@[hostname]
сервер просит пароль
[username]@[hostname]'s password:
но, даже если я ввожу корректный, сервер не принимает его:
Permission denied, please try again
и после трех попыток это закрывает соединение. Найдите здесь более описательный вывод, при помощи которого я добираюсь
ssh -v -v -v [username]@[hostname]
Любая справка значительно ценилась бы.
Большое спасибо в течение Вашего времени
Вместо того, чтобы использовать имя хоста сервера, попытайтесь использовать ip-adres.
Я столкнулся с той же проблемой при установке моего сервера, и это, казалось, разрешило проблему.
ssh [username]@[host_ip-adres]
Если Вы хотите использовать имя хоста, Вы, возможно, должны были бы настроить сервер DNS.
но можно обойтись без.
Когда Вы определяете Хост с Host [hostname]
необходимо использовать ssh [hostname]
Разрешение отклонено, потому что Вы на самом деле не используете файл ключей когда ssh [user]@[hostname]
Необходимо решить, хотите ли Вы аутентификацию соединения ключом/идентификатором, или паролем затем фокусируются на этом для нахождения проблемы. Я рекомендую использовать ключ/идентификатор с тех пор при корректном управлении это - больше безопасного метода.
SSH будет всегда отступать к просьбе о пароле даже в случаях, где это никогда не будет работать. Избегать этого использования -o 'batchmode yes'
(эти кавычки необходимы) на клиенте ssh команда, устанавливающая связь. Затем, если ключ не может быть принят, он обходит подсказку пароля (это обычно для использования ssh в сценарии, который должен постараться не застревать при подсказке пароля). SSH только попробует 3 ключа когда-то, поэтому если допустимый ключ будет 4-м, то ее не попробуют, и соединение будет прервано. Лучше пробовать только одну попытку ключа для каждого подключения, если Вы уверены, что это - корректное. Затем можно повторить попытки подключения при внесении изменений в сервере. Это поможет иметь информацию о файле журнала с сервера. Сделать grep sshd /var/log/auth.log
видеть то, что sshd пытается сказать Вам.
Если бы Вы не загрузили свой закрытый ключ (тот без .pub) в ssh-агент затем, то необходимо указать его в соединении SSH.
SSH -i ~/.ssh/id_rsa user@host
Похоже, что это не просит у Вас Вашу ssh ключевую передачу, но Вашу пользовательскую передачу, которая является, почему Ваш пароль перестал работать