Сначала покажется что ты это читал, но это не так, контекст другой.
Сегодня мы рассмотрим как запретить пользователям добавлять свои ключи.
Если пользователь подключит свой ключ - меняй пароль, не меняй - пофигу.
БЕЗДУМНАЯ НАСТРОЙКА SSH по SSH МОЖЕТ ПРИВЕСТИ К ПОТЕРЕ КОНТРОЛЯ НАД СЕРВЕРОМ.
Чтобы минимизировать риски, я подключаюсь по ssh двумя сессиями.
В одной правлю
sshd_config, другую оставляю для возможного отката при косяках, поскольку при перезапуске sshd с измененным конфигом текущие сессии сохраняются.ㅤ
Наличие физического доступа к консоли - приветствуется.
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.2
Вы уже знаете, как настроить ключи. Они прописаны и работают!!!
Допустим в файле
/etc/ssh/sshd_configPubkeyAuthentication yes
# перед изменениями рекомендую включить парольную аутентификацию
PasswordAuthentication yes
PermitRootLogin prohibit-password
Там же есть опция
AuthorizedKeysFile и обычно она закомментирована. Она указывает, где находится файл аuthorized_кeys.делаем так:
sudo test -f /etc/ssh/authorized_keys && sudo mv /etc/ssh/authorized_keys /etc/ssh/authorized_keys.1
sudo mkdir /etc/ssh/authorized_keys
sudo cp "/home/${USER}/.ssh/authorized_keys" "/etc/ssh/authorized_keys/${USER}"
sudo chown -R root:root /etc/ssh/authorized_keys
sudo chmod -R u=rwX,go=rX /etc/ssh/authorized_keys
в файле
/etc/ssh/sshd_configAuthorizedKeysFile /etc/ssh/authorized_keys/%u
перезапускаем sshd:
systemctl restart sshd
Всё. Будут действовать только ключи из из папки
/etc/ssh/authorized_keys в файле с именем пользователя, и подключить их может только root.После успешного подключения по ключу:
PasswordAuthentication no
systemctl restart sshd
Кстати, протестировать и посмотреть все опции
sshd_config можно командой sudo sshd -TЭто так, к сведению.
tags: #linux
—
🔔 @bashdays