Я хочу самостоятельно собрать сервер CentOS7.
Я уже выполнил шаги, указанные по этой ссылке:https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7, которая включает в себя
- сгенерировал свой новый файл ключа .pub с помощью keygen.
- добавьте его содержимое, начинающееся с «ssh-rsa», в .ssh/authorized_keys
- chmod ключ и папка .ssh,
- настроить sshd с помощью
vi /etc/ssh/sshd_config
- используйте
systemctl reload sshd
для перезапуска sshd.
На этом этапе я подумал, что будущие операции SSH с моего клиентского хоста уже должны будут потребовать ключ для входа в систему. Однако на этом этапе я все еще могу использовать SSH для входа на свой сервер, используя только пароль.
Есть ли какие-то особые процедуры, которые мне не хватает?
решение1
Откройте файл конфигурации sshd и раскомментируйте или добавьте строку PasswordAuthentication no
. Перезапустите службу sshd.
решение2
- добавьте его содержимое, начинающееся с «ssh-rsa», в .ssh/authorized_keys
Нет... Это должно быть на удаленной системе. В вашей личной системе вы храните закрытый ключ, и вы добавляете открытый ключ ко всем /home/<user>/.ssh/authorized_keys
системам/пользователям, к которым вы хотите получить доступ с помощью ключа. Это можно сделать «вручную» или с помощью ssh-copy-id
, обычно:
ssh-copy-id -i ~/.ssh/your_key.pub remote-host
или
ssh-copy-id -i ~/.ssh/your_key.pub user@remote-host
если это другой идентификатор пользователя.
Если вы делаете это вручную, убедитесь, что вы сохранили правильные флаги авторизации для всех файлов и каталогов .ssh (они должны быть разрешены только для чтения и записи, и ни для кого другого доступ запрещен).