Я создал пользователя с правами root.
useradd -ou 0 -g 0 myuser -p [12345]
когда я пытаюсь выполнить su для нового пользователя, я получаю:
: No such file or directory
когда я хочу подключиться как этот пользователь через ssh, я получаю:
Permission denied, please try again.
Итак, я проверил /etc/passwd
:
myuser:x:0:0::/home/myuser:/bin/bash
Чтобы проверить это, я создал еще одного пользователя без прав root, и это сработало очень хорошо.
Я также добавил эту строку, /etc/sudoers
но она все равно не работает:
root ALL=(ALL) ALL
myuser ALL=(ALL) ALL
Затем я изменил PermitRootLogin
sshd_config, но все равно безрезультатно :(
Как создать пользователя с правами root и подключиться к своей машине по ssh от имени этого пользователя?
решение1
Обычно в Linux есть только один пользователь root
, а в Ubuntu он деактивирован. Вместо этого лучше добавить всех пользователей, которые должны иметь административные привилегии в группу, sudo
выполнив
adduser username sudo
как root. Это позволяет им выполнять команды как root, набрав
sudo command
и получить корневую оболочку
sudo -i
Кроме того, в этом случае вам не придется включать вход root для ssh.
Домашний каталог, вероятно, не был создан, потому что вы добавили пользователя с идентификатором ( 0
), который уже существовал. Избегайте установки идентификатора пользователя и идентификатора группы вручную.
Пошаговое руководство по созданию пользователя-администратора:
sudo adduser username
sudo adduser username sudo
решение2
Первая ошибка заключается в том, что вы создали пользователя, домашний каталог которого не существует. Это одна из причин, по которой вы всегда должны использовать adduser
вместо useradd
. Как объясняется в man useradd
:
useradd is a low level utility for adding users. On Debian,
administrators should usually use adduser(8) instead.
Одной из особенностей adduser
является то, что он автоматически создает для вас домашний каталог. Итак, то, что вы хотели запустить, было:
sudo adduser --gid 0 --uid 0 username
Следующая проблема заключается в том, что вам необходимо разрешить вход в систему root. Редактировать /etc/ssh/sshd_config
и изменять
PermitRootLogin no
к
PermitRootLogin yes
Затем перезапустите ssh
сервер:
sudo service ssh restart
решение3
После нескольких часов это наконец-то сделано! Я просто создаю нового пользователя, как это:
useradd -ou 0 myuser -p [#hash-password]
и затем я изменил PermitRootLogin yes
этот путь:/etc/ssh/sshd_config
проще простого :)