Введите следующую команду, чтобы проверить, являются ли закрытый ключ и открытый ключ совпадающим набором (идентичным) или не совпадающим набором (отличаются) в каталоге $ USER / .ssh. Команда cut предотвращает сравнение комментария в конце строки в открытом ключе, позволяя сравнивать только ключ.
ssh-keygen -y -f ~/.ssh/id_rsa | diff -s - <(cut -d ' ' -f 1,2 ~/.ssh/id_rsa.pub)
Вывод будет выглядеть как одна из этих строк.
Files - and /dev/fd/63 are identical
Files - and /dev/fd/63 differ
Я написал сценарий оболочки, который пользователи используют для проверки прав доступа к файлам своих файлов ~ / .ssh / и соответствующих ключей. Это решает мои проблемы с пользовательскими инцидентами при настройке ssh. Это может помочь вам. https://github.com/BradleyA/docker-security-infrastructure/tree/master/ssh
Примечание. Мой предыдущий ответ (в марте 2018 года) больше не работает с последними выпусками openssh. Предыдущий ответ: diff -qs <(ssh-keygen -yf ~ / .ssh / id_rsa) <(cut -d '' -f 1,2 ~ / .ssh / id_rsa.pub)