Чи є кореневий пароль для OS X та Ubuntu?


13

Під час налаштування нової установки Ubuntu або OS X користувач, як правило, створений для вас. В OS X це будь-яке ім'я користувача, яке ви виберете. На Ubuntu (серверна версія) зазвичай ubuntuстворюється користувач.

Як я це розумію, є також користувач root, до якого можна отримати доступ через щось на зразок sudo su - root, і ввести пароль ubuntuабо створеного вами користувача, який входить до групи адміністраторів. Як тільки ви перейдете на, rootя думаю, ви можете використовувати passwdкоманду і змінити пароль root.

Але який був rootпароль до цього? Чи існує? Це випадковий рядок цифр і букв? Як система з цим справляється?


1
У Ubuntu вам потрібно лише sudo su. Обліковий rootзапис передбачається за замовчуванням.
Натан Осман

1
У Ubuntu suпотрібен лише для переходу на якогось некорінного користувача. Щоб запустити одну команду як root, введіть sudo command. Щоб отримати кореневу оболонку, введіть sudo -i.
Скотт Северанс

І якщо ви скажете комусь на форумах ubuntu, як встановити root-пароль або завантажувати та скидати пароль користувача через livecd, він може отримати ваш обліковий запис заборонений протягом 30 днів ... запитайте мене, як я знаю .... Ubuntu люди справді не хочуть, щоб у вас був встановлений пароль для root, вони хочуть, щоб ви завжди використовували sudo
ivanivan

Відповіді:


12

Я можу відповісти лише за Ubuntu.
У Ubuntu rootкористувач має заблокований пароль. З passwdчоловічої сторінки:

   -l, --lock
           Lock the password of the named account. This option disables a 
           password by changing it to a value which matches no possible 
           encrypted value (it adds a '!' at the beginning of the password).

Ви можете побачити !в /etc/shadow.

Користувач із заблокованим обліковим записом не може змінити свій пароль, але root може без попереднього введення старого пароля.


10

Ось як розблокувати (?) Або створити фактичного користувача root в OSX:

  1. Системні налаштування
  2. Користувачі та групи
  3. Параметри входу (натисніть блокування та автентифікацію тут)
  4. Натисніть "Приєднатися" (NAS)
  5. Відкрийте утиліту каталогу
  6. Клацніть на блокування (ще раз автентифікуйтесь)
  7. Меню редагування -> включити root користувача
  8. (Меню редагування -> змінити пароль root)

Насолоджуйтесь!


+1 за хороший опис графічного інтерфейсу Mac. Я лише коли-небудь знав спосіб командного рядка активувати кореневий рахунок.
Ендрю Дж. Брем

Так, я був вражений, коли хлопець Apple Customer Care провів мене по кроках, щоб зробити це ... Я зрозумів, що це занадто добре таємницю, щоб тримати "прихованим".
Йоссі Фарджун

7

Як сказав enzotib, Ubuntu має кореневий обліковий запис, але він за замовчуванням заблокований.

Тепер про Маки:

Як ви, напевно, здогадуєтесь, root (разом із усіма обліковими записами демон) не відображається в розділі "Налаштування та користувачі".

Дивлячись на мої комп'ютери /etc/passwd, є запис root, разом із повідомленням

Note that this file is consulted directly only when the system is running
in single-user mode.  At other times this information is provided by 
Open Directory.

Я намагався знайти список користувачів Open Directory без успіху, але в конфігураціях згадувалося про чітке надання дозволів root, навіть якщо вони маються на увазі. Коли я вперше налаштував машину, мені ніколи не пропонувалося ввести пароль, тому я б здогадався, що кореневий обліковий запис заблоковано, як і в ubuntu. Я не (і не дуже хочу) намагатися ввести пароль і ввійти в нього, але ви, мабуть, могли.

Лінія passwd:

root:*:0:0:System Administrator:/var/root:/bin/sh

Команда perl з коментаря Кіта додає a :0до кінця. Не хеш паролів Жодного тіньового файлу я не можу знайти, я не зміг їх знайти ніде, щоб перевірити, чи може root мати пароль.


Який вихід perl -e 'print join(":", getpwuid(0)), "\n"'? ( ПРИМІТКА . Якщо воно містить щось схоже на хешированный пароль, не публікуйте його тут.)
Кіт Томпсон

@KeithThompson Опублікував це, нічого особливого. Я знаю про хеш, але я вдячний вам, включаючи попередження для користувачів, які цього не можуть зробити.
Кевін

1
Як щодо тієї самої команди Perl з вашим власним uid? Це показує хешований пароль? (Знову ж, очевидно, не публікуйте хеш.)
Кіт Томпсон

1
Хм. Можливо, getpwuid()на MacOS це робиться навмисно, щоб уникнути виявлення конфіденційної інформації (хоча має бути щось, що може отримати доступ до хешованого пароля).
Кіт Томпсон

1
Я шукав в Інтернеті, і, здається, у них був тінь на останньому ос, але я не можу знайти його у лева.
Кевін

7

Корінний пароль на Mac OS X зберігається (як згадував Кевін) у Open Directory. Для підтвердження існування кореневого користувача необхідний простий греп:

$ grep ^root /etc/passwd 
root:*:0:0:System Administrator:/var/root:/bin/sh

Щоб прочитати інформацію про корінний пароль з Open Directory:

$ dscl localhost -read /Local/Default/Users/root Password
Password: *
$ dscl localhost -read /Local/Default/Users/root AuthenticationAuthority
No such key: AuthenticationAuthority

У випадку за замовчуванням (як показано) користувач root не має встановленого хешу пароля (обліковий запис заблоковано). Ви можете порівняти цей параметр зі значенням у OD для "звичайного" користувача:

$ dscl localhost -read /Local/Default/Users/normaluser Password
Password: ********
$ dscl localhost -read /Local/Default/Users/normaluser AuthenticationAuthority
AuthenticationAuthority: ;ShadowHash;HASHLIST:<SALTED-SHA512>...#rest of hash data

2

Ubuntu встановлює пароль для названого користувача та використовує його для завдань на рівні суперпользователя (root) як встановлення та видалення системного програмного забезпечення та видалення каталогів та виконання файлів за межами домашнього каталогу. Кореневий обліковий запис насправді є, але без призначеного пароля трохи приховано. Канонічні та умови використання Ubuntu фактично відштовхують вас від прямого покликання на нього.

Він встановлює іменований обліковий запис користувача, а не налаштовує загальний обліковий запис "ubuntu". Принаймні, це стосується встановлених систем. Можливо, існує загальний обліковий запис "ubuntu", якщо ви використовуєте живий компакт-диск, я не пам'ятаю, я не працював із живим компакт-диском вже пару років.

Поведінка в MacOsX насправді досить схожа. Вам пропонується встановити пароль, який викликається щоразу, коли ви намагаєтеся виконувати завдання на рівні суперпользователя, такі як встановлення або оновлення програмного забезпечення, але немає облікового запису з назвою "root".


3
Я вважаю, що насправді існує кореневий "користувач". Ви можете suмати root, root має домашній каталог, а файлами може належати root. Чи можете ви надати якесь посилання на свій аргумент про відсутність кореневого облікового запису?
cwd

3
Звичайно, є явний кореневий обліковий запис (uid 0, назва "root"). Це повинно бути в будь-якій системі Unix. Він просто не має пароля (принаймні, за замовчуванням). Ви навіть можете отримати кореневу оболонку:, sudo bash -lа потім введіть whoami. (Але зазвичай ви повинні використовувати sudoдля окремих команд, а не мати інтерактивну оболонку, що працює як корінь.)
Кіт Томпсон,

Ви, можливо, правильно, я вас не допитую. Якщо є кореневий рахунок, то вони добре зробили його, приховавши його. Я також використовую Fedora на деяких моїх машинах, а віртуальні машини та root є дуже активним обліковим записом.
haziz

1

Для Ubuntu: за замовчуванням ви можете отримати доступ до новоствореного облікового запису користувача.

Щоб запустити будь-яку команду як root, ви можете використовувати

sudo command

потім введіть свій звичайний пароль.

Кореневий обліковий запис за замовчуванням заблокований. Щоб активувати root за допомогою командного рядка, просто введіть

sudo passwd

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

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.