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