СЦБИСТ - железнодорожный форум, блоги, фотогалерея, социальная сеть
Это сообщение показано отдельно, перейти в тему, где размещено сообщение: Как включить доступ через ssh от пользователя рут (root) в Линукс?
Старый 12.08.2025, 09:54   #1 (ссылка)
Crow indian
 
Аватар для Admin

Регистрация: 21.02.2009
Возраст: 40
Сообщений: 30,010
Поблагодарил: 398 раз(а)
Поблагодарили 5987 раз(а)
Фотоальбомы: 2576 фото
Записей в дневнике: 698
Репутация: 126089

Тема: Как включить доступ через ssh от пользователя рут (root) в Линукс?


Как включить доступ через ssh от пользователя рут (root) в Линукс?

По умолчанию в большинстве дистрибутивов Linux (например, Ubuntu, Debian, Rocky Linux, CentOS) прямой доступ по SSH от пользователя root отключён — это мера безопасности.

 
Содержание

Пошаговая инструкция


Задайте пароль для пользователя root
Сначала нужно убедиться, что у учётной записи root установлен пароль. Выполните команды (от имени пользователя с правами sudo):

bash
sudo -s
PHP код:
passwd 
Введите новый пароль для root и подтвердите его.

Отредактируйте конфигурационный файл SSH


Откройте файл /etc/ssh/sshd_config с помощью текстового редактора (например, nano или vi):

bash
PHP код:
nano /etc/ssh/sshd_config 
Измените параметр PermitRootLogin
Найдите строку, содержащую PermitRootLogin. Возможные варианты исходного значения:

no — прямой доступ root запрещён;

without-password или prohibit-password — разрешён только вход без пароля (например, по сертификату);

закомментированная строка (начинается с #).

Измените строку так, чтобы она выглядела следующим образом:

bash
PHP код:
PermitRootLogin yes 
Если строка была закомментирована, уберите символ # в начале строки.

Сохраните изменения и закройте редактор.
Для nano: нажмите Ctrl + O для сохранения, затем Ctrl + X для выхода.

Перезапустите службу SSH


Выполните одну из команд (в зависимости от системы инициализации):

bash
PHP код:
systemctl restart sshd    # для систем с systemd
service ssh restart       # для старых систем 
Если ни одна из команд не сработала, можно перезагрузить всю систему:

bash
PHP код:
reboot 
Проверьте возможность подключения
Попробуйте подключиться к системе от имени root:

bash
PHP код:
ssh root@<адрес_сервера
Введите пароль root, если всё настроено верно — подключение будет успешным.

Альтернативный способ: вход по ключу (более безопасно)


Сгенерируйте пару ключей на клиентской машине:

bash
PHP код:
ssh-keygen -t ed25519 
Скопируйте публичный ключ на сервер:

bash
PHP код:
ssh-copy-id root@<адрес_сервера
На сервере создайте каталог и файл для ключей (если их ещё нет):

bash
PHP код:
mkdir /root/.ssh
vi 
/root/.ssh/authorized_keys 
Вставьте содержимое публичного ключа (id_ed25519.pub с клиентской машины) в файл authorized_keys.

Перезапустите SSH-сервер (см. п. 5 основной инструкции).

Важные замечания


Безопасность. Включение прямого доступа root по SSH снижает уровень безопасности системы. Используйте эту настройку только на доверенных локальных сетях.

Производственные системы. На рабочих (продакшн) серверах рекомендуется не разрешать прямой вход от root по SSH.

Резервное копирование. Перед редактированием /etc/ssh/sshd_config сделайте резервную копию файла:

bash
PHP код:
cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak 
Мониторинг попыток входа. Настройте систему журналирования и мониторинга (например, fail2ban) для защиты от брутфорс-атак.

Следуя этим рекомендациям, вы сможете безопасно настроить доступ root по SSH при необходимости.
Admin вне форума   Цитировать 12
 Нажмите здесь, чтобы написать комментарий к этому сообщению  
 

Яндекс.Метрика