Я хочу ssh, scp, git fetch и т.д. Без пароля. Я видел предыдущие и закрытые вопросы по этой проблеме, но, похоже, предлагается использовать ssh-ключи. Однако после настройки ключей SSH меня все еще спрашивают о моем пароле (он не запрашивает пароль от моего личного ключа; он запрашивает пароль для входа в систему). Как я должен настроить это так, чтобы он использовал мой личный ключ только для аутентификации?
2 ответа
Установите разрешения для ~/.ssh
(0700) и его содержимого (0600) для клиента и сервера соответствующим образом.
SSH является параноидальным о собственности файла authorized_keys
Кто-то, кроме root, может изменить файл, тогда он не будет его использовать. Он проверяет все дерево каталогов, поэтому, если кто-то может что-то сделать, например, заменить домашний каталог или каталог .ssh, он не будет его использовать. Проверьте разрешения от authorized_keys
вплоть до /
. Ни один из них не должен быть доступен для записи группой или миром без установленного бита. (Разрешения для моего каталога /home - drwxrwxr-t
. Владение должно быть пользователем root или пользователем. Разрешения на авторизованные ключи не должны разрешать доступ для группы или мира.
Тестирование с помощью ssh -v
вместо ssh
должно помочь. Использование ssh-copy-id
для копирования ключа в удаленную систему - хорошая идея.