Linux Labs

Сеть / Ступень 10 из 14

SSH — доверие к серверу и вход по ключу

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 5 из 9 · на машине · 6 мин

Что на самом деле разрешает сервер

Настройки сервера лежат в sshd_config, но в файле бывает не то, что действует. Сервер сам печатает свои итоговые значения.

Строка Что решает
PasswordAuthentication вход по паролю
KbdInteractiveAuthentication вход с вопросами сервера — обычно тоже о пароле
PubkeyAuthentication вход по ключу
PermitRootLogin можно ли входить root
AuthenticationMethods publickey из всех способов остаётся один — ключ

sudo sshd -t -f файл проверяет файл на ошибки, sudo sshd -T -f файл печатает все значения, которые сервер возьмёт.

Упражнение · посмотреть

Какое значение действует

В /opt/ssh-lab/sshd_config учебного сервера вход по паролю вроде бы выключили. Найди в файле строки о паролях, затем спроси сам sshd, какие значения у него действуют.

Сначала предположи

В файле две строки: выше PasswordAuthentication yes, ниже PasswordAuthentication no. Какое значение действует?

Теперь начни упражнение, выполни команду и сверь прогноз с выводом.

Войти и начать Машина доступна после входа

Если строка повторяется, sshd берёт первую. Поэтому правят строку, которая уже есть: новая строка в конце файла ничего не изменит.

Файл настроек сервер читает при запуске — в отличие от authorized_keys, который он читает при каждом входе. Порядок правки: изменить файл, проверить sshd -t, перезапустить сервер и войти новым подключением.

bash
sudo vim /opt/ssh-lab/sshd_config
bash
sudo sshd -t -f /opt/ssh-lab/sshd_config
sudo systemctl restart lab-sshd
sudo sshd -T -f /opt/ssh-lab/sshd_config | grep passwordauth
ssh training id -un

Новый вход нужен и после правки: уже открытая сессия прошла проверку раньше и о новых настройках ничего не говорит.

Проверь себя 1 вопрос

Ты выключил пароли в sshd_config и перезапустил сервер. Открытая раньше сессия deploy работает. Что это доказывает?

  • Ошибки в файле ищет sudo sshd -t -f файл. Открытая сессия файл не читает.

  • Действующее значение печатает sudo sshd -T -f файл: строка passwordauthentication.

  • Эта сессия прошла проверку до правки. Как сервер пускает теперь, покажет новый вход: ssh training id -un.

Открытая сессия прошла проверку входа раньше, и правка её не касается. Правку подтверждают тремя командами: sshd -t, sshd -T и новый вход.

Ubuntu 24.04
Загрузка…