Учусь использовать открытые ключи с ssh-сервером
следуя этому руководству от DigitalOcean
ssh-сервер : kali VM
ssh-клиент : Ubuntu VM
Используя Ubuntu VM я сгенерировал пару ssh ключей, но мне нужен только один для использования, так как остальные в некотором роде дубликаты, но имеют другой пароль
выполнив эту команду ssh-copy- id kali@192.168.1.10
возвращается
Number of key(s) added: 4
Now try logging into the machine, with: "ssh 'kali@192.168.1.10'"
and check to make sure that only the key(s) you wanted were added.
Как удалить добавляемые ключи и остаться с единственным сгенерированным ключом при выполнении команды ssh-keygen
Я пытался удалить ключи, выполнив эту команду sudo rm -rf /home/kali/. ssh
но каждый раз, когда я пытаюсь скопировать вновь созданный ключ, я получаю 4 ключа на kali VM
Мне кажется, вы копируете 4 ключа на свой сервер.
Это взято из онлайн-документации, расположенной по адресу https://www.ssh.com/academy/ssh/copy-id
-i Задает идентификационный файл, который должен быть скопирован (по умолчанию ~ / .ssh / id_rsa). Если эта опция не указана, будут добавлены все ключи, перечисленные в ssh-add -L . Примечание: это может быть несколько ключей, и добавление дополнительных авторизованных ключей может произойти случайно! Если ssh-add -L не возвращает ключей, будет использоваться последний измененный ключ, соответствующий ~ / .ssh / id * .pub, за исключением совпадающих с ~ / .ssh / * - cert.pub.
Обновите из комментариев:
Если вы хотите удалить определенный ключ, просто используйте:
$ rm .ssh / id_target_key *
Одним из вариантов резервного копирования может быть:
$ mv .ssh / id_target_key id_target_key.bak
Помните, что всегда есть 2 ключа. Один частный и один общедоступный. Последний имеет расширение .pub
. Где найти эти ключевые файлы? На сервере откройте / etc / ssh / sshd_config и найдите
AuthorizedKeysFile .ssh / authorized_keys
Этот файл можно отредактировать, чтобы удалить ключ вручную, могут быть установлены ключи других пользователей.
На клиенте откройте / etc / ssh / ssh_config и найдите альтернативный путь оттуда. (У меня все закомментировано, поэтому ~ / .ssh является местоположением по умолчанию) ~ / - это относительный путь, который изменяется для каждого пользователя. Выполнение набора команд ssh с sudo приведет к другому пути: / root .