#31
|
|||
|
|||
Linux запрет выключения/перезагрузки
Anatoliy Sablin написал(а) к Alexey Vissarionov в Jun 17 13:33:52 по местному времени:
Привет, Нello, Alexey Vissarionov. On 01.06.17 11:46 you wrote: AV>>> В приличных местах за такое увольняют. А в неприличных - бьют в AV>>> рыло. s/yes/without-password/ и никак иначе (то есть, рута по AV>>> паролю не пускать). AK>> В приличных местах пользователям с правами рута, от которых надо AK>> делать защиту от ребута, бьют в рыло. AV> Это в неприличных. А в приличных - таки увольняют :-) Чем отличается приличный ирландец от неприличного? Приличный перед тем как писать в раковину убирает оттуда посуду. :) -- Best regards! Posted using Нotdoged on Android --- Нotdoged/2.13.5/Android |
#32
|
|||
|
|||
Linux запрет выключения/перезагрузки
Alexey Vissarionov написал(а) к Anatoliy Sablin в Jun 17 14:02:00 по местному времени:
Доброго времени суток, Anatoliy! 01 Jun 2017 13:31:02, ты -> мне: AV>>>> Мне известна ровно одна "песочница", которая может такое AV>>>> обеспечить. AS>>> ОС на другом железе? :) AV>> VPS на основе OpenVZ. AS> OpenVZ крутая штука была. Только я не слышал, чтобы оно было AS> для ядра > 2.6. Скоро будет :-) gremlin@vztest:~ > uname -a Linux vztest.local 3.10.0-514.16.1.vz7.32.1.owl1 #1 SMP Fri Apr 28 22:12:04 MSK 2017 x86_64 GNU/Linux -- Alexey V. Vissarionov aka Gremlin from Kremlin gremlin ПРИ gremlin ТЧК ru; +vii-cmiii-ccxxix-lxxix-xlii ... Дао, высказанное словами - это не Дао, а так, дао какое-то --- /bin/vi |
#33
|
|||
|
|||
Linux запpет выключения/пеpезагpузки
Anatoliy Sablin написал(а) к Alexey Vissarionov в Jun 17 18:19:37 по местному времени:
Привет, Нello, Alexey Vissarionov. On 01.06.17 13:31 you wrote: AV>>> И вместо пеpеpыва в сеpвисе получить полный отказ, ага. SA>> а по-подpобнее? AV> Куда подробнее-то? Сам подумай: вот есть сервер, на котором AV> работает что-то настолько критичное, что ТС ищет способ запретить AV> перезагрузку. А теперь представь, что какой-то долбодятел таки AV> ухитрился отправить его в reboot - при штатной настройке он AV> поднимется через несколько минут (очень плохо, но всего лишь AV> полупиздец), а установка пароля на загрузчик только увеличит время AV> простоя, пока кто-то не доберется до консоли и не введет этот AV> самый пароль (а это уже полный пиздец). Особенно если сервер стоит в tier 4 за решёткой, куда доступ имеют два человека, один в отпуске, а второй ногу сломал. -- Best regards! Posted using Нotdoged on Android --- Нotdoged/2.13.5/Android |
#34
|
|||
|
|||
Linux запрет выключения/перезагрузки
Anatoliy Sablin написал(а) к Alexey Vissarionov в Jun 17 18:36:01 по местному времени:
Привет, Нello, Alexey Vissarionov. On 01.06.17 14:02 you wrote: AV>>> VPS на основе OpenVZ. AS>> OpenVZ крутая штука была. Только я не слышал, чтобы оно было для AS>> ядра > 2.6. AV> Скоро будет :-) Это круто, а то уже складывается впечатление, что его забросили. Хотя многие говорят, что openvz не нужен, т. к. есть lxc, более того, есть непривилигированный lxc. AV> gremlin@vztest:~ > uname -a Linux vztest.local AV> 3.10.0-514.16.1.vz7.32.1.owl1 #1 SMP Fri Apr 28 22:12:04 MSK 2017 AV> x86_64 GNU/Linux Обещанного три года ждут. :) Красношапка вышла в 2014 году. Неудивительно, что народ отказывается от openvz. -- Best regards! Posted using Нotdoged on Android --- Нotdoged/2.13.5/Android |
#35
|
|||
|
|||
Re: Linux запрет выключения/перезагрузки
Eugene Grosbein написал(а) к Alexey Vissarionov в Aug 17 20:30:55 по местному времени:
01 июня 2017, четверг, в 01:55 NOVT, Alexey Vissarionov написал(а): VB>> Нужен полный запрет удаленной перезагрузки сервера, никакими VB>> средствами, чтобы перезагрузить его можно было, только подойдя к VB>> серверу физически нажав на клавиатуре ctrl+alt+del. AV> Не бывает. Ибо "три веселых кнопки" обрабатываются в userspace. Ну, прикрутить обработку трех веселых кнопок в kernelspace не такая большая проблема. В раскладку клавиатуры добавляется специальный "символ" (который биндится на произвольную комбинацию, хоть на тот же Ctrl-Alt-DEL), при вводе которого драйвер клавиатуры, работающий в kernel space, вместо возвращения какого-либа кода инициирует процедуру ребута. Наверняка в Linux сделано в достаточной мере аналогично, а в FreeBSD в этом случае, если не запрещено через sysctl, вызывается ядерная функция shutdown_nice(), которая при наличии супервизора типа init(8) просто посылает ему соответствующий сигнал и он начинает полную процедуру в userland, начиная с остановки сервисов, а если его нет (например, система ещё не успела загрузиться), то пропускает этот этап и сразу переходит к kern_reboot() - всё, что остаётся делать ядру уже после завершения работы супервизора, включая платформенно-зависимые манипуляции с оборудованием. Eugene -- Choose no life --- slrn/1.0.2 (FreeBSD) |
#36
|
|||
|
|||
Re: Linux запрет выключения/перезагрузки
Eugene Grosbein написал(а) к Vladimir Bobarykin в Aug 17 20:49:55 по местному времени:
31 мая 2017, среда, в 01:07 NOVT, Vladimir Bobarykin написал(а): VB> Вот, аналогия - например забыл пароль рутовый - стандартно грузишься в сингле VB> во фряхе, или в емерженси в той же центоси, подмонтируешь раздел, меняешь пароль VB> рута. root как линуксе, так и в FreeBSD это суперпользователь. Если немного подумать, ты хочешь ограничить всемогущество суперпользователя. Это вполне возможно и к тому есть несколько разных подходов. Если сильно не вдаваться в подход OpenVMS, где вообще убрали суперпользователя и для супер-критичных вещей может требоваться одновременное присутствие нескольких людей, каждый из которых должен ввести известный только ему пароль, временно образуя такого "коллегиального" суперюзера на данный момент, то и самого (удаленного) суперюзера можно ограничить "слегка". Например: процедура ребута первым делом проверяет, а не включен ли повышенный режим безопасности (тупо переменная в ядре) и если да - просто ничего не начинает. Процедура изменения режима безопасности позволяет его только усиливать и без ребута понизить уровень можно ТОЛЬКО через ядерный отладчик, доступный с консоли (пока пропустим момент про удалённую консоль через физический KVM или его эмуляцию посредством IPMI и проч.): войти в отладчик и поменять значение переменной работающего ядра, выйти из отладчика и продолжить работу системы. А если отладчика в ядре нет, то понизить уровень безопасности без ребута нельзя вообще никак. Процедура динамической подгрузки кода в ядро (ядерных модулей) перестаёт работать, если включен высокий уровень безопасности. Открытие /dev/mem или его аналогов безусловно запрещено, если уровень высокий (но в качестве исключения доверенный код может открыть /dev/mem до повышения уровня и держать открытый handle даже после повышения уровня). При загрузке системы по дефолту уровень стандартный, при нём загружаются все нужные модули, затем система повышает себе уровень, затем начинается настройка сетевых интерфейсов и запуск сетевых сервисов. В итоге подключившийся удаленно root не может изменить код ядра и не может заставить ядро перезагрузиться, хотя и может поменять софт/настройки так, чтобы после ребута убрать этот запрет. И без ребута можно понизить уровень безопасности с консоли, что разблокирует ребут. Ну и ещё процедура обработки паники ядра вместо ребута должна вызывать особую процедуру, сущность которой сильно зависит от истинных целей всей этой фигни и включает в себя остановку системы вместо перезагрузки. Eugene -- Поэты - страшные люди. У них все святое. --- slrn/1.0.2 (FreeBSD) |