Вопрос или проблема
Пытаюсь обновить Almalinux 8 до 9, используя sudo leapp upgrade
от имени пользователя root на новом VPS. Как я могу быстро решить эту проблему, чтобы обновить операционную систему сервера, не заблокировав доступ для пользователя root?
Фактор риска: высокий (ин Hibitor)
Заголовок: Возможные проблемы с удалённым входом с использованием учетной записи root
Резюме: Конфигурационный файл OpenSSH будет обновлён до версии RHEL9, что больше не позволит вход в систему root с использованием пароля. Хорошей практикой является использование административного пользователя, отличного от root, и аутентификации без пароля, но если вы полагаетесь на удалённый вход root, это изменение может заблокировать ваш доступ к этой системе.
Решение: [подсказка] Если вы зависите от удалённых входов root с использованием паролей, рассмотрите возможность создания другого пользователя для удалённого администрирования или добавления комментария в sshd_config рядом с директивой "PermitRootLogin yes", чтобы предотвратить замену его во время обновления.
Ключ: 3d21e8cc9e1c09dc60429de7716165787e99515f
Для решения вы можете добавить комментарий рядом с PermitRootLogin yes, чтобы обойти это.
Ответ или решение
Для успешного обновления с Almalinux 8 до 9 без блокировки доступа к системе через учетную запись root, вам необходимо учесть изменение конфигурации OpenSSH, которое происходит при обновлении. В версии RHEL 9 изменены настройки, что запрещает вход с паролем для пользователя root. Это может привести к потере удаленного доступа к серверу, если вы полагаетесь на эту возможность.
Вот пошаговый план действий для решения данной проблемы:
-
Создание нового пользователя:
Рекомендуется создать нового пользователя с административными правами, который будет использоваться для удаленного управления сервером. Например:adduser adminuser passwd adminuser usermod -aG wheel adminuser
-
Настройка аутентификации по ключам:
Настройте SSH для использования аутентификации по ключам вместо паролей. Сгенерируйте SSH-ключи на вашей локальной машине:ssh-keygen -t rsa -b 4096
Скопируйте открытый ключ на ваш сервер:
ssh-copy-id adminuser@your-server-ip
-
Изменение конфигурации SSH:
Перед обновлением отредактируйте файл конфигурации SSH для предотвращения блокировки root-пользователя:nano /etc/ssh/sshd_config
Найдите строку
PermitRootLogin
и измените её следующим образом:#PermitRootLogin yes
Добавьте комментарий к этой строке, чтобы предотвратить её перезапись при обновлении:
#PermitRootLogin yes # Оставьте эту строку, чтобы избежать ее перезаписи при обновлении
-
Проверка конфигурации и перезапуск SSH:
После внесения изменений проверьте конфигурацию и перезапустите SSH:sshd -t # Проверка конфигурации на синтаксические ошибки systemctl restart sshd
-
Проведение обновления:
Теперь вы готовы к обновлению вашего сервера:sudo leapp upgrade
-
Проверка доступа:
После завершения процесса обновления, убедитесь, что вы можете войти в систему с помощью новосозданного пользователя и что доступ к root-учетной записи также сохраняется, если это необходимо.
Используя эти шаги, вы сможете избежать блокировки доступа к вашему серверу после обновления Almalinux и соблюсти рекомендации по безопасности.