Мне нужно использовать другой компьютер для доступа к моему ssh-серверу. Это связано с тем, что недавно реализованный vpn в моем университете не работает на моем текущем компьютере, и я потерял доступ к серверу.
I ssh через зашифрованные ключи ssh. Могу ли я скопировать эти ключи на новый компьютер (на котором работает vpn). Я попытался скопировать файлы id_rsa
и id_rsa.pub
в папку ~/.ssh
, но он не распознает ключи, и нет приглашения ввести пароль для дешифрования ключей.
EDIT: я не могу получить доступ к серверу, чтобы создать новую пару ключей для нового компьютера и выйти за пределы страны, чтобы физически не получить доступ к ней.
Спасибо.
Проверьте разрешения и права собственности на ваш файл закрытого ключа. Из руководства
Эти файлы содержат конфиденциальные данные и должны быть прочитаны пользователем, но недоступны другим (чтение / запись / выполнение). ssh просто игнорирует файл закрытого ключа, если он доступен другим.Обычно файлы ключей должны выглядеть так:
$ ls -l ~/.ssh/id_rsa*
-rw------- 1 benj benj 1766 Jun 22 2011 .ssh/id_rsa
-rw-r--r-- 1 benj benj 388 Jun 22 2011 .ssh/id_rsa.pub
, которые вы можете выполнить с помощью:
$ chown benj:benj ~/.ssh/id_rsa*
$ chmod 600 ~/.ssh/id_rsa
$ chmod 644 ~/.ssh/id_rsa.pub
Попробуйте запустить ssh-add перед SSH на сервере - после этого вам будет предложено ввести пароль, а затем последующие подключения ssh могут использовать ваш закрытый ключ.
Команда ssh-add добавляет ключи к ключевому агенту.
Зашифрованные закрытые ключи сохраняют свой открытый ключ незашифрованным. Таким образом, клиент SSH может подключаться к удаленному серверу без запроса пароля (он только предлагает публичную часть в этом пункте). Всякий раз, когда сервер принимает открытый ключ, клиент на вашем ПК хочет дешифровать закрытый ключ и будет запрашивать парольную фразу.
Теперь, когда сервер принимает соединение только с определенного IP-адреса, это уже отклонено на первом шаге и объясняет сообщение, полученное с сервера «Роуминг, не разрешенный сервером».
Итак, я думаю, что ваш сервер каким-то образом ограничен, чтобы разрешать только определенные IP-адреса для этого ключа. Вы можете сделать это несколькими способами, но это является общим в ~/.ssh/authorized_keys:
from="192.168.1.2" ssh-rsa AAAAB3NzaC[...]
Чтобы доказать, что вы можете прочитать открытый ключ из зашифрованного закрытого ключа без пароля, запустите: [ ! d4]
ssh-keygen -y -f /path/to/private/key