Як увімкнути кореневий доступ до ssh на Ubuntu 14.04


136

Я б хотів увімкнути sshкореневий доступ до Ubuntu 14.04. Редагування /etc/ssh_config(так PermitRootLogin так) нічого не вплинуло.

Відповіді:


206

Просто додавання пароля для root недостатньо для сервера Ubuntu 14.04.

Вам також потрібно відредагувати /etc/ssh/sshd_configта прокоментувати наступний рядок:

PermitRootLogin without-password

Трохи під ним додайте наступний рядок:

PermitRootLogin yes

Потім перезапустіть SSH:

service ssh reload

Для Ubuntu 16.04.1 LTS (GNU / Linux 4.4.0-59-generic x86_64) PermitRootLogin without-passwordбуло замінено на PermitRootLogin prohibit-password.


10
Робити це через ssh, service ssh reloadкорисно.
Torsten Römer

Я запускав Ubuntu на VM, однак я не знаю, що ці зміни не спрацювали, поки я не перезапустив VM один раз (можливо, мені потрібно зупинити / запустити мережеві послуги на додаток до вищезазначених кроків, проте я не впевнений).
VSB

2
Я маю це зробити, PermitRootLogin yesтому що у мене був звичайний пароль
JorgeeFG

1
Якщо ви робите це, поки ssh або scp скаже вам "Дозвіл відхилено, будь ласка, спробуйте ще раз" в іншому вікні, закрийте і повторіть сш (або scp) замість того, щоб просто вводити пароль.
Camille Goudeseune

1
Також не забудьте перевірити, чи згадується корінь у sshd_config: AllowUsers root
січня

38

Потрібно встановити пароль для кореневого облікового запису, і тоді він запрацює.

sudo passwd

Введіть один і той же пароль двічі.

PS Після зміни / etc / ssh / sshd_config не забудьте перезавантажити opensh-сервер.

sudo service ssh reload

2
Це спрацює; але до ОП: подумайте двічі, перш ніж це зробити. Якщо ви все ще працюєте, а ваш ПК знаходиться в Інтернеті, подумайте про додавання fail2banдо системи. (Цей коментар пов'язаний із включенням кореневого входу через ssh; наявність локального пароля для root - лише питання смаку).
Рмано

25

З сервером Ubuntu 14.04.

Встановити пароль

sudo passwd

Зміни в / etc / ssh / sshd_config

Змінити PermitRootLogin

PermitRootLogin yes

Можливо, вам також доведеться перевірити значення PasswordAuthentication. Якщо встановлено значення "ні", тоді встановлено "Так"

PasswordAuthentication yes

Потім перезапустіть SSH:

service ssh restart


5
Це єдина повна відповідь. В інших відповідях частина пропущена.
вісбукі

За винятком того, що у моєї немає цієї лінії. Додавання цього не змушує його працювати.
SDsolar

OMG, так !! Дякую! PasswordAuthenticationбула відсутнім посиланням
mpen

Я очистив Opensh-сервіс і openssh-клієнт в обох системах (Kali Linux і Ubuntu 18), перевстановив їх, застосував цю відповідь і кожен з них працював чудово.
mk1024

У моєму sshd_config, оскільки він має "UsePam так", і рядок "Корінь DenyGroups", окрім усіх вищезазначених дій, мені потрібно видалити "корінь" для DenyGroups, щоб змусити його працювати.
Flickerlight

3

На 14.04 вам слід буде коментувати рядок у / etc / ssh / sshd_config

#StrictModes yes

3
Замість того, щоб вимкнути перевірку режиму файлів, було б краще переконатися, що /root/.sshі файли в ньому не читаються іншим користувачем, крім root.
Adaephon

-1

Для мене жоден із цих кроків не спрацював, я навіть спробував щось, чого б я ніколи не пробував для чогось іншого, ніж іграшковий vm: PermitRootLogin without-password

Єдине, що для мене працювало - це відключити модуль PAM для цього:

UsePAM no

Ця опція зазвичай знаходиться в самому кінці файлу. Якщо чесно, я не знаю справжніх недоліків цього, але оскільки ви не повинні дозволяти ввійти в систему в Інтернеті, я думаю, що це добре для приватного dev-vm.

Тим не менш, встановлюйте надійний пароль завжди. Ні, це не виняток. Навіть не лише цього разу ...


5
PermitRootLogin without-passwordне означає, що користувач root має входити в систему без аутентифікації. Це означає, що користувачеві root не дозволяється входити з паролем. Натомість користувач root повинен увійти, використовуючи ключі RSA, що є більш захищеним.
Крейг

@Craig проблема, яку я маю на увазі, полягає не в тому, що кореню потрібно буде використовувати RSA SSH-ключі. Проблема полягає в тому, що root - це користувач, кожен, хто стукає у двері вашого SSH-сервера, знає, що існує. Що на мою думку не є гарною справою. Але не соромтеся пускати корінний вхід через SSH, але, як ви вже сказали, принаймні переконайтеся, що для цього використовують ключі!
Kjellski

4
Ви сказали, що не будете намагатися PermitRootLogin without-passwordні за що, крім іграшку VM. Це те, що ви використовуєте для відключення автентифікації пароля для root, так що єдиний спосіб root може ввійти за допомогою ключів RSA. Ви не заявляли, що ви спробували цю опцію за допомогою ключів RSA. Якщо ви спробували цю опцію без клавіш, немає можливості досягти успіху. Якщо ви користуєтеся PermitRootLogin without-password, то ви взагалі не можете ввійти, використовуючи автентифікацію пароля, не з надійним паролем, не з порожнім паролем, зовсім.
Крейг
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.