Вы столкнулись с предупреждением, приведенным ниже, и не знаете, как его исправить?
Warning: Permanently added '192.168.1.1' (RSA) to the list of known hosts.
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/path/to/my/key.pem' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /path/to/my/key.pem
Permission denied (publickey).
Это обычная ошибка, которую можно увидеть при попытке войти на сервер через SSH, и ее относительно легко исправить. Но прежде чем мы перейдем к этому, давайте разберемся, почему появляется эта ошибка.
Почему я вижу эту ошибку?
Произошло то, что ключ, который вы пытаетесь использовать (key.pem в приведенном выше примере), слишком доступен для пользователей в системе.
Это плохо, потому что тогда вы не единственный, кто может использовать ключ, что противоречит цели. Закрытые ключи должны быть доступны только одному пользователю.
Например, если злоумышленник каким-то образом получит доступ к любой из учетных записей в вашей системе, тогда он сможет получить доступ к ключу, а не получать доступ конкретно к вашей учетной записи. Это дает им слишком много возможностей получить закрытый ключ.
Как я могу это исправить?
Как я уже сказал ранее, это легко исправить. Просто беги:
$ sudo chmod 600 /path/to/my/key.pem
Имейте в виду, что если вы храните все свои ключи в ~/.ssh
(или в
любом другом каталоге, на самом деле), вам может потребоваться настроить
разрешения для этого каталога. В этом случае используйте это:
$ sudo chmod 755 ~/.ssh
Вот и все. Теперь вы сможете без проблем пользоваться своим ключом.