Возможно, вы используете неправильную раскладку клавиатуры.
Что у вас на /etc/vconsole.conf
?
Это только в Arch или в других дистрибутивах тоже есть?
Вам никогда не нужно копировать весь каталог ~/.ssh
, только содержимое общедоступной части вашего ключа (s ). Если включена аутентификация по паролю, проще всего будет
user@darkstar ~ $ ssh-copy-id remoteusername@remotehostname
И пусть ssh позаботится о том, чтобы все было в нужном месте.
Если вам нужно сделать это вручную, или если у вас нет аутентификации по паролю, и вы должны попросить системного администратора установить ключ на место и т. д., тогда вам нужно скопировать файл ~/.ssh/id_rsa.pub
. Как только это будет на удаленной машине, просто добавьте содержимое к тому, что уже есть в файле ~/.ssh/authorized_keys
под соответствующей учетной записью пользователя. Простой cat id_rsa.pub >> ~/.ssh/authorized_keys
будет работать.
Наконец, вы хотите убедиться, что разрешения на закрытый ключ, файл authorized_keys
и каталоги ~/.ssh
на обеих машинах установлены надлежащим образом -каталог ~/.ssh
должен быть установлен на 0700, а файлы внутри него должно быть 600.
Чтобы устранить проблему , войдите на удаленный компьютер, переименуйте существующий каталог ~/.ssh
во что-то другое, повторно -создайте его и правильно установите разрешения, выйдите из системы и используйте ssh-copy-id
из над. В таком случае,вы должны иметь возможность ssh, используя свой ключ и любую парольную фразу, связанную с ним.
Изменить для обновленного вопроса Я думаю, вам не хватает концепции пары ключей. Подумайте о дверных замках домов -, чтобы один ключ мог открыть их все, у них внутри должна быть одна и та же комбинация штифтов.
Файл id _rsa.pub для любой заданной комбинации помещается в авторизованный файл ключей _на удаленной машине. Чтобы этот ключ работал, у вас должен быть соответствующий закрытый ключ на машине, с которой вы подключаетесь. Вы можете иметь дело с несколькими ключами, разместив их в разных файлах и используя опцию -i
для ssh (и др. ), чтобы указать, к какому закрытому ключу подключаться.
Итак, используя вашу информацию, вам нужно получить файл закрытого ключа с ноутбука (возможно~/.ssh/id_rsa
)и поместить его на сервер B, назвав его как-то так~/.ssh/laptop_id_rsa
). Когда вы используете ssh с сервера B на сервер A, вы можете использовать ssh -i ~/.ssh/laptop_id_rsa user@serverA
. Если вы хотите подключиться по ssh от A к B, повторите процесс, поместив закрытый ключ на A. В качестве альтернативы вы можете использовать сервер B в качестве хоста / туннеля для перехода, поэтому, как только вы подключитесь к нему с правильными параметрами, вы можете затем с вашего ноутбука ssh напрямую к Сервер А. Это хранит ваш файл закрытого ключа только на вашем ноутбуке (хорошо для безопасности, вы не хотите, чтобы копии ходили повсюду, особенно с ключом без пароля!)
Вы также, вероятно, захотите настроить файл ~/.ssh/config
, чтобы вы могли просто выполнить ssh serverA
и использовать соответствующее имя хоста, порт, имя пользователя, идентификационный файл и т. д.