как удалить мой ключ (ssh-keygen), когда я не знаю имени хоста? (Но я знаю другие вещи),

Я сделал огромную ошибку в создании .ssh без любой осторожности, и я хочу избавиться от них и возвратиться туда, где я начался.

Я выполнил команды в

ssh-keygen -t rsa -b 4096 -C trenta@github.com
Your identification has been saved in /home/trenta/.ssh/id_rsa.
Your public key has been saved in /home/trenta/.ssh/id_rsa.pub.
The key fingerprint is:

The key's randomart image is:

bash-4.1$ eval "$(ssh-agent -s)"

bash-4.1$ ssh-add ~/.ssh/id_rsa
bash-4.1$ ssh-keygen -y -f ~/.ssh/id_rsa
Enter passphrase: 

Я хочу возвратиться теперь, и я, как предполагается, использую

ssh -keygen -R hostname

Но, я не знаю имени хоста, как я могу избавиться от ключа?

Спасибо!

0
задан 23 November 2018 в 15:39

2 ответа

Ничто, чтобы сделать, кроме не удаляет ключи, которые Вы создали (~/.ssh/id_rsa и ~/.ssh/id_rsa.pub). Быстрая сводка того, как SSH работает и цель различных файлов.

  • SSH без паролей работает с "assymetric ключи".
  • Это требует пары ключей, которые Вы генерируете, одно частное (~/.ssh/id_rsa) и одна общественность (~/.ssh/id_rsa.pub).
  • Во время процесса входа в систему SSH использует Вас локальный закрытый ключ, чтобы сделать что-то, что может быть проверено в другой системе с помощью открытого ключа.
  • Открытый ключ не должен быть сохранен надежно. С другой стороны, закрытый ключ никогда не должен оставлять Вашу локальную систему. Можно защитить его с паролем, если Вы думаете, что Ваша локальная система (и ее резервные копии) не является достаточно защищенной, и кто-то еще мог получить доступ к ключу.
  • Для идентификации в других системах Вы даете им свой открытый ключ. В этих других системах, идентификаторы пользователей, в которые можно войти, чтобы иметь открытый ключ, добавленный к их ~/.ssh/authorized_keys файл, который, поскольку его имя подразумевает, собирает открытые ключи всех людей, которые могут войти в систему как тот идентификатор пользователя. Это сделано или вручную с редактором или использованием ssh-copy-id утилита.
  • Как дополнительная защита (главным образом полезный при использовании входа в систему пароля AFAIK), системы Вы соединяетесь, чтобы иметь идентификатор. Этот идентификатор отправляется в Вашу систему во время процесса входа в систему. Если идентификатор не находится в Вашем known_hosts файл (который имеет место в первый раз, Вы соединяетесь с ними), Вас спрашивают, признаете ли Вы, что идентификатор, и если так, он добавляется к Вашему локальному ~/.ssh/known_hosts. Обычно этот идентификатор никогда не должен изменяться, поэтому если Вас просят снова позже принять идентификатор, лучше спросить подтверждение некоторому администратору.

Так, где Вы: Вы только что генерировали несколько общественности/закрытых ключей в своей локальной системе.

  • Пока они не используются нигде, можно просто стереть их, предварительно не посмотрев.
  • При копировании открытого ключа в системе можно удалить его для чистоты, но это не угроза безопасности, пока закрытый ключ не был поставлен под угрозу.
  • Если когда-нибудь Вы подозреваете, что Ваш закрытый ключ был поставлен под угрозу (Вы сохраняете его без пароля, и кто-то получил доступ к Вашей системе или Вашим резервным копиям), то необходимо всерьез удалить открытые ключи соответствия из authorized_keys из идентификаторов/систем, где Вы скопировали его (с той точки зрения, known_hosts файл является хорошей подсказкой, которой системы содержат копию Вашего открытого ключа). Затем можно генерировать новую пару и скопировать новый открытый ключ в необходимые системы.
  • Обычно Вы имеете не локальный ~/.ssh/authorized_keys если Вы также не входите в систему в своей локальной системе с помощью SSH (но это редко, и лучше всего избегается),
  • Один случай, где Вы хотите удалить хост из known_hosts файл, когда идентификатор того хоста, изменения в законных целях (хост переустановлен или обновлен и старый идентификатор, теряются в процессе, но необходимо сказать администратор). Вы затем хотите смочь добавить новый идентификатор к Вашему known_hosts но это не может быть сделано, пока предыдущий идентификатор там. Одно решение состоит в том, чтобы стереться known_hosts но необходимо будет повторно принять ключи всех удаленных хостов, или Вы используете ssh-keygen -R <host> удалить только соответствующий устаревший ключ.
1
ответ дан 27 October 2019 в 02:31

Если Вы хотите вернуться к эпицентру, никакому ssh, просто

rm -rf ~/.ssh

(Спасибо @PerlDuck для напоминания о "r" для рекурсивного вызова) Теперь я думаю, что можно путать ключи с ключами с других серверов Вы ssh в; это находится в открытом тексте в ~/.ssh/known_hosts файл - видит, как управлять моим ssh известным файлом hosts

При попытке перечислить файлы или каталоги, которые могут начаться с периода, убедиться добавить "a" parm к ls команда, поскольку файлы, начинающиеся a".", "скрыты" от основного ls команда:

ls -la
0
ответ дан 27 October 2019 в 02:31

Другие вопросы по тегам:

Похожие вопросы: