Создайте ключ ssh:
$ ssh-keygen -t rsa –P ""
Перемещение ключа на авторизованный ключ:
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
bash
shell
ssh
io-redirection
sknit
источник
источник
Ответы:
Элемент пути
/home/user/.ssh/
не существует; shell (bash
) проверяет перенаправление (>>
) перед выполнением команды (cat
). Если/home/user
существует, и вы попробуйте это:Теперь вы получите:
Поскольку этот файл не может быть в этом месте, если
/home/user/.ssh/
он не существует для начала.Вы следуете некоторым инструкциям, возможно пропустив некоторые биты. Чтобы создать каталог:
Однако
id_rsa.pub
не будет там. Это будет где бы вы ни запускалиssh-keygen
команду.источник
Убедитесь, что вы вошли в систему как пользователь, для которого вы хотите сначала создать ключ ssh (или будьте готовы изменить пути в команде к правильному домашнему каталогу).
Затем просто создайте каталог:
Создайте файл с помощью
cat
команды, которую вы перечислили выше. Тогда не забудьте правильно установить разрешения:Возможно, вы захотите убедиться, что каталог .ssh также имеет соответствующие разрешения.
источник
chmod 700 ~/.ssh
Если возможно, я всегда призываю людей использовать инструмент командной строки
ssh-copy-id
.Если вы просто хотите скопировать открытый ключ SSH по умолчанию на удаленный сервер, просто выполните следующую команду:
Я показываю полный пример того, как использовать этот инструмент в этом разделе вопросов и ответов под названием: « Невозможно использовать ssh-соединение с rsync» .
источник
Это также может не сработать, если при создании ключа
ssh-keygen
вы даете ему имя файла. Я вошел какое - то названиеmy-ssh-file-name
, и он написал ключ/Users/MyUserName
вместо.ssh
папки. Если вы оставите имя файла пустым, оно запишется.ssh
как положено.источник
-f ~/.ssh/custom-key-name