Удаленный вход в систему как root в ubuntu

В моем проекте, я должен установить некоторый пакет удаленно. Если мне нужно войти в систему debian, я скажу:

$ ssh [email protected]
[email protected] password: 

он успешно входит в систему.

У меня есть вход в ubuntu прямо с помощью

 $ [email protected]
 [email protected] password:

это сообщение об ошибке throw в

Permission denied, please try again.

Как решить эту проблему?

Ответ 1

Документация Ubuntu говорит:

По умолчанию пароль корневой учетной записи заблокирован в Ubuntu.

В нем также говорится:

Пожалуйста, имейте в виду, что значительное количество пользователей Ubuntu новы для Linux. Существует кривая обучения, связанная с любой ОС, и многие новые пользователи пытаются использовать ярлыки, включив учетную запись root, войдя в систему как root, и изменение права собственности на системные файлы.

В нем подробно говорится о том, почему так было сделано.


Включение учетной записи root:

sudo -i

Чтобы включить Корневую учетную запись (например, установить пароль), используйте:

sudo passwd root

Используйте на свой страх и риск!

Вход в X, поскольку root может вызвать очень серьезные проблемы. Если вы верите вам нужна учетная запись root для выполнения определенного действия, проконсультируйтесь официальные каналы поддержки сначала, чтобы убедиться, что лучшая альтернатива.

Ответ 2

проверьте /etc/ssh/sshd_config, есть ли configure PermitRootLogin yes ниже # Authentication:. Если не yes, он не разрешает вход в систему как root.

вы можете изменить его на yes.

Затем перезапустите службу ssh, чтобы применить изменения: sudo service sshd restart

Ответ 3

Не включать учетную запись root. Не устанавливайте пароль для учетной записи root.

Лучше всего разрешить вход root с использованием аутентификации с открытым ключом, а не с паролем. Объяснение объясняется в архивах списков рассылки Debian.

  • Откройте /etc/ssh/sshd_config и проверьте, установлено ли PermitRootLogin на yes. Если нет, установите для него значение yes и перезапустите ssh с помощью sudo service ssh restart

  • Создайте каталог .ssh в корневом доме, если он не существует, и убедитесь, что он имеет строгие разрешения:

    sudo -i mkdir -p .ssh
    sudo -i chmod 700 .ssh
    
  • Создайте пару открытого/закрытого ключа в системе, из которой вы хотите войти.

  • Скопируйте свой открытый ключ в свою обычную учетную запись.

  • Добавьте свой открытый ключ в .ssh/authorized_keys от root и убедитесь, что файл имеет строгие разрешения:

    cat id_rsa.pub | sudo -i tee -a .ssh/authorized_keys
    sudo -i chmod 600 .ssh/authorized_keys
    

С помощью этой настройки вы можете войти в систему как пользователь root, используя свой закрытый ключ.

Если вы ранее включили учетную запись root, отключите ее сейчас:

sudo passwd -l root

Ответ 4

Вы можете установить пароль для root, но это не рекомендуется и может вызвать угрозу безопасности. Но если у вас есть учетная запись пользователя в целевой системе с учетными данными sudo, вы можете войти в систему как пользователь:

ssh [email protected]
[email protected] password:

а затем сделайте то, что хотите, используя sudo или получите корневую оболочку рекомендуемым способом:

[email protected]$ sudo su
Password:
[email protected]#

а затем выполните свое домашнее хозяйство. Вместо "sudo su" вы также можете использовать "sudo -i", что эквивалентно, или "sudo -s", который поддерживает текущую среду.

См. Документация Ubuntu Sudo/Root

Ответ 5

отредактируйте свой /etc/sshd _config:

sudo /etc/sshd_config

найдите строку с PermitRootLogin в разделе проверки подлинности и раскомментируйте PermitRootLogin или установите PermitRootLogin yes. Или просто добавьте эту строку в конец файла:

PermitRootLogin yes

Затем вы перезапустите демон ssh, сделав

/etc/init.d/ssh restart 

или

service ssh restart

в зависимости от вашего дистрибутива Linux Теперь вы будете входить через ssh с вашей учетной записью root Предупреждение. По соображениям безопасности это не рекомендуется. Что вы можете сделать, так это логин с любым другим подключением через ssh и внутри вашей сессии пользователя:

sudo command

или просто:

sudo su

продолжить сеанс под учетной записью root

Ответ 6

ssh -l user localhost "sudo whoami"

возвращает:

root

Пока:

  • Удаленный хост позволяет подключиться к пользователю, чтобы иметь возможность sudo, не запрашивая дополнительный пароль.

  • ssh-copy-id запущен или исправлены ключи, скопированные на удаленный хост, чтобы пользователь мог снова подключиться без пароля через ssh

Все, что отличается, было добавлено слово sudo перед выполнением команды

Если есть проблемы с безопасностью с ключами и т.д., тогда вы можете взглянуть на язык с именем expect - используя ожидание script, вы сможете ssh/telnet, что бы он ни делал на удаленном хосте, и отправлять пароли и т.д.

Ответ 7

Я думаю, что единственный раз, когда мне когда-либо приходилось входить в систему с правами root, я впервые использовал AWS EC2, и я пытался использовать его как root, потому что знал, что он существует. Имя пользователя ec2-пользователя.

Ответ 8

  • Изменить файл sshd_config vi /etc/ssh/sshd_config
  • Комментарий #PermitRootLogin without-password в разделе Аутентификация:
  • вставить ниже PermitRootLogin yes
  • Сохраните файл.
  • Перезапустите службу ssh service ssh restart

Ответ 9

По умолчанию пароль корневой учетной записи заблокирован в системах на базе Debian, таких как Ubuntu:

Переключитесь на пользователя root пользователя:

sudo -i;

Теперь установите пароль для учетной записи root:

sudo passwd;

Просто добавить пароль для root недостаточно.

Входящие подключения ssh должны быть активированы, как показано ниже:

Измените /etc/ssh/sshd_config и найдите следующую строку:

PermitRootLogin without-password

Просто замените слово without-password на yes, как в следующей строке:

PermitRootLogin yes

Затем перезапустите SSH:

sudo service ssh restart;

Наконец, перезагрузите систему:

sudo reboot;

Готово!!!