nixp.ru v3.0

26 мая 2017,
пятница,
21:56:10 MSK

DevOps с компанией «Флант»
Moris написал 18 апреля 2005 года в 01:27 (351 просмотр) Ведет себя неопределенно; открыл 5 тем в форуме, оставил 9 комментариев на сайте.

На первом уровне выполнения можно зайти как root без просьбы ввести пароль. Как это исправить?

И еще один вопрос. Установил hddtemp, включил S.M.A.R.T., прописал в db-файл свой хард, а в консоле выдает что нет такой команды как hddtemp. Почему? Может нужно добавить в оболочку эту команду? Если да, то как это сделать? Спецы помогите…

// Тему переместил(а) fly4life из форума «Общий по UNIX и open-source».

Longobard

1) сменить init level например на третий. Для этого в файле /etc/inittab строчку

id:1:initdefault:

Заменить на

id:3:initdefault:

2) locate hddtemp — это ты узнаешь, где у тебя на самом деле он леэжит. А затем переместить его в PATH с помощью команды mv

Moris

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

С hddtemp уже разобрался…. Установил apt-get’ом… Вот только протупил немножко :-) — забыл номер порта для того чтоб gkrellm отображал температуру харда! Как мне теперь узнать какой порт был указан?

fly4life
Moris
Как менять уровни я знаю. Я хотел узнать как задать чтоб система требовала ввести пароль root при загрузке в первом уровне, а незагружалась автоматом…

Например, если у тебя загрузчик lilo, то можно в его конфигурационном файле использовать опцию 'password' и одновременно с ней 'restricted'. Опция 'restricted' указывает на то, что пароль на загрузку системы, заданный опцией 'password', надо будет вводить лишь в том случае, если ядру передаются какие-то опции в строке загрузчика. Таким образом можно «запаролить» попытки загрузиться в первый runlevel.

Moris

То есть, надо прописать это в /etc/lilo.conf ? И как это должно выглядеть? примерно так?:

restricted

password=<мой пароль!>

fly4life
Moris
То есть, надо прописать это в /etc/lilo.conf ? И как это должно выглядеть? примерно так?:

restricted

password=<мой пароль!>

Да (только в обратном порядке эти опции более правильно смотрятся, да и пароль, естесственно, без треугольных скобок).

Кстати, для таких вопросов и существует 'man lilo.conf' ;).

Moris

не получается…:-( Я там нашел абзац где про это пишется — после него и написал, но всеравно когда при загрузки например задаю

linux single root=/dev/hda3 то захожу как root без пароля. Может я не там написал пароль. Будь добр ткни пальцем пожалуста где именно в этом файле его нужно написать?

fly4life
Moris
не получается…:-( Я там нашел абзац где про это пишется — после него и написал, но всеравно когда при загрузки например задаю

linux single root=/dev/hda3 то захожу как root без пароля. Может я не там написал пароль. Будь добр ткни пальцем пожалуста где именно в этом файле его нужно написать?

Написать «его» <font size=«-2»>(а точнее «их», т.к. эти опции в твоём случае надо писать рядом)</font> можно в нескольких местах. Если напишешь в самом начале (до описания опций загрузки ядер и других ОС), то эти опции применятся глобально ко всем загружаемым ядрам и ОСям, описанным в lilo.conf. Если же ты пропишешь эти опции в какой-нибудь конкретной секции, загружающей конкретное ядро или стороннюю ОС, то, соответственно, пароль будет требоваться при загрузке этого конкретного отдельновзятого ядра.

Но сдаётся мне, что у тебя проблема в другом. Ты просто не перезаписал содержимое загрузочной области командой lilo ;)

Genie

да и, кроме того, видимо, пароль у рута — пустой..

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

так пароль какой у пользователя root?

fly4life
Genie
да и, кроме того, видимо, пароль у рута — пустой.

Чего-то мне сдаётся, не было бы в таком случае пометки, что именно «на первом уровне выполнения» можно зайти без пароля под пользователем root.

Genie

разглядывая /etc/inittab:

# What to do in single-user mode.

~~:S:wait:/sbin/sulogin

можно сделать вывод, что пароль оно не стпросит только в одном случае….

этот случай описан в man sulogin.

вкратце — либо пароль пустой, либо файлы /etc/passwd, /etc/shadow повреждены.

fly4life
Genie
этот случай описан в man sulogin.

вкратце — либо пароль пустой, либо файлы /etc/passwd, /etc/shadow повреждены.

А если не вкратце? А-то почитал 'man sulogin’, потом подумал над тем, что сказал ты, и так и не понял… Ну, у меня пароль непустой, указанные тобой файлы не повреждены. Однако в однопользовательском режиме всё равно пароль рута не требуется.

Единственное, что пришло на ум, так это возможность отказаться вообще от single-user mode (путём некорых манипуляций в inittab). Но это как-то и не требовалось автором, да и не советую отказываться от возможности грузиться в single-user mode.

fly4life

Ой, простите, немного наврал.

Если в строке загрузчика писать init=/bin/sh, то попадёшь в консоль с правами рута безо всякого пароля. Однако если грузиться именно в single-user mode (с параметром single в строке загрузчика), то действительно требуется пароль рута.

Genie
Если в строке загрузчика писать init=/bin/sh, то попадёшь в консоль с правами рута безо всякого пароля.

и как это можно было перепутать с single-user? ;)

это уже вообще непонятно, как классифицировать..

консоль аварийного входа, не иначе. «последний способ»…

А если не вкратце?

а что — не вкратце?

сперва оно пробует стандартными средствами — вполне возможно, что и через pam, а там — как рассказано.

если ни один из этих методов не сработал — недоступно там или что ещё — пробуются альтернативные (failback) методы.

/etc/passwd, и, если есть, /etc/shadow

если и это оказывается недоступно — в реззультате невозможности примонтировать раздел с /etc, с ошибкой в fs, которая не даёт его прочитать,… — то уже просто пытается запустить шелл, чтобы хоть как-то дать управление для восстановления системы.

а указанный тобой способ — это для перезадания утерянного суперпользовательского пароля и можно использовать на нормальной системе.

только вот тут как раз и надо настроить в том же lilo.conf то, про что ты говорил — про password и прочее.

именно для этого и даются эти самые опции.

чтобы, имея локальный доступ к конслоли. нельзя было таким образом получить права системы на этой машине.

(правда, стОит тут вспомнить о диске от болгарки… и её сходстве с cd..) :D

fly4life
Genie
и как это можно было перепутать с single-user? ;)

это уже вообще непонятно, как классифицировать..

консоль аварийного входа, не иначе. «последний способ»…

Да нет же, дело тут не в путанице.

Было дело миллион лет назад, когда нужно было загрузиться в однопользовательский режим. И пароля рута при такой загрузке не требовалось. Может быть это из-за того, что на стареньких линуксах не было sulogin либо этот sulogin грузился с некоторым параметром, пускающим в шелл без пароля.

Поэтому у меня, например, вообще никакого удивления не вызвал факт того, что у Morisa при загрузке в однопользовательском режиме не требуется пароль (даже при наличии этого самого пароля и целостности passwd и shadow).

А про опции 'init=/bin/sh' и ’single’ — это уже отчёт об экспериментах, которые провёл только что ради интереса на своей SuSE 9.1 ;).

Genie
а указанный тобой способ — это для перезадания утерянного суперпользовательского пароля и можно использовать на нормальной системе.

только вот тут как раз и надо настроить в том же lilo.conf то, про что ты говорил — про password и прочее.

именно для этого и даются эти самые опции.

чтобы, имея локальный доступ к конслоли. нельзя было таким образом получить права системы на этой машине.

Сдаётся мне, что с этим Moris и борется ;)

В любом случае, указанный мною способ универсален, как для случая зугрузки в 'single', так и для — 'init=/bin/sh'.

Moris

Да нет ребята, ничего я не терял и линукс у меня не старый (Knoppix 3.8), просто так сказать в целях обучения (ну и немного паранои :-) ) поднял этот вопрос. Я это в одной умной книжке прочитал :-), но у меня не получалось это исправить поэтому у вас и спросил. Теперь все исправил благодаря fly4life.

fly4life, вот ты говоришь что это было в основом старых дистро, почему же тогда в кнопиксе 3.8 это досих пор есть и как с этим у других. А то я накачал кучу дистрибутивов… (Mandrake, Suse,Gentoo,Slackware) Щас буду ставить Suse 9.3

В загрузчиках GRUB надо тоже кофигурационный файл править…?

fly4life
Moris
fly4life, вот ты говоришь что это было в основом старых дистро

Да нет, не совсем. Точнее, не во всех, а в том, с которым сталкивался я.

Moris
почему же тогда в кнопиксе 3.8 это досих пор есть

Ну, вот про knoppix тебе Genie уже сказал. Там по умолчанию рутовый пароль не установлен.

Moris
и как с этим у других. А то я накачал кучу дистрибутивов… (Mandrake, Suse,Gentoo,Slackware) Щас буду ставить Suse 9.3

Насчёт того, как в других дистрибутивах из твоего списка, отвечу только за SuSE. Там пароль root’а трубуют задать при установке, и поэтому он пустым не будет. Это раз. Второе: при загрузке в single-user mode у тебя будут по-любому спрашивать пароль root’а. Посему если тебе необходимо запретить загрузку без пароля только в однопользовательский режим, то необходимость мучаться с паролированием загрузчика автоматически отпадает.

Moris
В загрузчиках GRUB надо тоже кофигурационный файл править…?

Ну, да.

Moris

Я ставил кнопискс на хард, для изучения линукса, устанавливал/удалял разные приложения поэтому root-пароль пустым быть не может. В любос случае сюзи уже поставил так что спасиба вобщем за инфу по lilo

«Там пароль root’а трубуют задать при установке» — нетакой я уж и ламер чтоб этого незнать :-)