Я работаю над (Debian) Dreamhost VPS, и, похоже, мне нужна только аутентификация на основе пароля: добавление моих открытых ключей RSA и DSA в ~/.ssh/authorized_keys
не изменило поведение требования пароля для входа в систему.
Как настроить сервер, чтобы он мог принимать ~/.ssh/authorized_keys
?
Вам нужно будет отредактировать /etc/ssh/sshd_config
следующим образом:
# Both of these are probably already there, but commented
PubkeyAuthentication yes
# The next line makes sure that sshd will look in
# $HOME/.ssh/authorized_keys for public keys
AuthorizedKeysFile %h/.ssh/authorized_keys
Кроме того, если вы хотите отключить аутентификацию по паролю все вместе (что обычно является хорошей идеей, если вы используете пары ключей), добавьте следующее:
# Again, this rule is already there, but usually defaults to 'yes'
PasswordAuthentication no
После этого, перезапустить ssh путем выдачи /etc/init.d/sshd restart
и все должно быть хорошо!
Приведенное выше предполагает, что вы уже правильно создали .ssh
режиссер с надлежащие разрешения.
Это означает, что вы устанавливаете chmod 0700
к ~/.ssh
.
Вот шаги: 1. Загрузите свой открытый ключ на сайт и добавьте его в файл ~ / .ssh / authorized_keys. 2. Убедитесь, что авторизованные ключи имеют атрибуты 0600 (chmod 0600 ~ / .ssh / authorized_keys) 3. Теперь попробуйте ssh, если вы используете putty, запустите конкурс и загрузите свой закрытый ключ.
Также проверьте владельца и разрешения в вашем домашнем каталоге. Вы должны владеть своим домашним каталогом, а разрешение не должно превышать 755.
Эти настройки необычны, но трудно понять, когда это произойдет.
Ключи публикации идут в "authorized_keys2", обратите внимание на 2. Как кто-то еще написал выше, вы можете настроить конфигурацию sshd для использования вашего файла "authorized_keys", если хотите.
Это также вызывало у меня проблемы на сервере, который наши системные администраторы использовали в качестве промежуточного узла. Мне было указано, что каждый пользователь должен быть создан локально, чтобы /home/user[123]/authorized_keys
должен существовать и содержать ключ паба. Указанный файл необходимо указать как user1: user1.
ssh-rsa ...insert pub key string... user1@local
Создание ~ / .ssh / config локально, на ближайшем хосте, также помогает быстрее подключаться и определять полезную опцию, а именно EscapeChar ~
Это может быть необходимо, а может и нет, chmod 0600 /user1/.ssh/authorized_keys
и chmod 0700 /root/.ssh/
. Это не помогло мне во время моих первых попыток устранения неполадок.
Отредактируйте / etc / ssh / sshd_config и раскомментируйте:
AuthorizedKeysFile %h/.ssh/authorized_keys