LINUX.ORG.RU
ФорумAdmin

Зачем нужен sudo?

 , ,


0

5

Во многих конфигуруциях/убунту, отключен рут доступ через ssh - заходишь под юзером и потом либо su без пароля, либо sudo с тем же паролем что и у юзера. В чем смысл защиты? Защита от дыр в самом ssh? Сам всегда включаю рут на серверах(дебиан). Все nginx etc под другими пользователями.

★★★★
Ответ на: комментарий от mord0d

Запуск определённого скрипта от определённого пользователя с проверкой хэша этого скрипта

А можно подробностей? Если вы конечно не про вариант обертки на запуск которой разрешен запуск.

anc ★★★★★
()
Ответ на: комментарий от firkax

делаешь setuid-прогу, которая организует

ну так sudo и получается в некотором роде такой прогой, просто универсальной

представляет из себя дыру, то есть ты по факту даёшь админам телеграма

подожди, ну так ты либо разрешаешь как-то обозначенному непривилегированному процессу совершать одно конкретное действие либо вообще не решаешь задачу. тогда все остальные твои варианты тоже дыра.

asdpm
()
Ответ на: комментарий от MagicMirror

потенциальные дыры

когнитивную нагрузку

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

asdpm
()
Ответ на: комментарий от firkax

Так в том и дело - не надо запускать рут-проги в не-рут окружении. Это и есть тот отвратительный виндузятный подход. Перелогинься в рута, увидь там рут-шелл и из него уже запускай.

O_o

o_O

Скажите, а другие случаи психических отклонений в Вашей семье были?

router ★★★★★
()
Ответ на: комментарий от ptah_alexs

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

suid скрипт?

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

Ну sudoers тоже сначала надо раскурить.

anc ★★★★★
()
Ответ на: комментарий от ptah_alexs

Там ничего критичного нет,

Ненужно? И если да, то зачем оно вообще у вас запущено?

а во вторых только старт/стоп конкретных контейнеров и никаких других.
стоп конкретных контейнеров

Ненужно-2 ?

старт/стоп конкретных контейнеров

Ненужно^3.

anc ★★★★★
()
Ответ на: комментарий от anonymous_sama

Даже не знаю вред это или польза. Скорее всего «безопасность» doas заключается в том что его гораздо меньше ковыряли чем sudo

Эффект неуловимого джо :)

anc ★★★★★
()
Ответ на: комментарий от asdpm

ну так sudo и получается в некотором роде такой прогой, просто универсальной

Это тот случай когда универсальность идёт во вред. Потому как в этой универсальной проге получается с одной стороны очень много побочной логики (и соответственно мест, которые могли быть кем-то неправильно поняты или неправильно реализованы, что регулярно и случается), а с другой она всё равно намного менее гибкая чем закодить нужную вещь сразу на каком-нить ЯП по месту надобности, сразу учтя все детали.

Например, попробуй выдать с помощью sudo права на безопасное монтирование флешек, например так что точка монтирования должна принадлежать юзеру, запрашивающему монтирование, опции какие-то надо разрешать, какие-то не надо, а какие-то надо ставить принудительно (nosuid), ну и должна быть проверка что устройство, которое хочет смонтировать юзер - действительно временно подключённое. Или упрощённая версия: путь должен быть в /home/username и не содержать внутри симлинк-атак. Или ладно, пусть монтирует куда угодно (это опасно, но для демки закроем глаза), хотя бы логику с опциями монтирования сделай и проверку что устройство нужное.

Кастомным обработчиком при этом это всё делается довольно просто. Ты можешь сказать «а вот sudo нужно чтоб этому обработчику выдать рут-права» - да нет, не нужно, бит setuid в правах полностью покрывает эту нужду.

подожди, ну так ты либо разрешаешь

В том, что ты процитировал, речь вообще не про прогу была, а про то что принимать команды из стороннего мессенджера без локальной проверки авторства и времени отправки этих команд - дыра. Всмысле что из стороннего мессенджера может прийти что угодно по желанию его (мессенджера) администраторов/владельцев.

firkax ★★★★★
()
Ответ на: комментарий от anonymous_sama

Скорее всего «безопасность» doas заключается в том что его гораздо меньше ковыряли чем sudo

Там код сильно меньше и проще, так что я думаю там и ломать то особо нечего.

Dr64h ★★★
()
Ответ на: комментарий от anc

даже на серверах газпрома есть команда рестарта системы. а уж каким интерфейсом организован доуступ дело вторично.
для системы, если зреть в корень, нет особой разницы между програмой веб-сервера, реализующей веб-интерфейс или програмой bash, реализующую интерфейс управления с помощью экрана и клавиатуры, или програмой ssh, реализующей ssh-интерфейс, и т.д.
все они запустят программку reboot, которая иницирует системный вызов перезагрузки системы.

pfg ★★★★★
()
Ответ на: комментарий от firkax

с помощью sudo права на безопасное монтирование флешек, например так что точка монтирования должна принадлежать юзеру, запрашивающему монтирование

udisks2 существует.

MagicMirror ★★
()
Ответ на: комментарий от MagicMirror

udisks2

Вот же тёмные люди его авторы, не догадались что можно просто sudo пользоваться а не писать отдельную прогу?

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от Bfgeshka

еще одно логичное следствие «меньше кодобаза - меньшая функциональность». тоже чисто статистически :)
молоток + пробойник сломать труднее перфоратора, но почему-то перфоратором пользуются сильно чаще :) ответишь почему ??

п.с. doas не использовал, функциональность не сравнивал.

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 2)
Ответ на: комментарий от pfg

даже на серверах газпрома есть команда рестарта системы. а уж каким интерфейсом организован доуступ дело вторично.

Конечно вторично. Какая разница между вашим домом в котором есть есть золото и Форт-Нокс в котором есть золото... интерфейс доступа однозначно вторичен.

anc ★★★★★
()
Ответ на: комментарий от MagicMirror

Хорошая же идея. Только не «любого мыслимого действия», а того, которое не выполнимо без обращения к привилегированным операциям.

Ну и не обязательно именно демона, можно ещё suidroot-хелперы использовать по ситуации.

firkax ★★★★★
()
Ответ на: комментарий от MagicMirror

Ну, я решил не отвлекаться от темы раз ты сам такой хороший пример ненужности sudo принёс. А так да, я ни разу не использовал udisks2 и то что в нём dbus это минус.

firkax ★★★★★
()
Ответ на: комментарий от pfg

еще одно логичное следствие «меньше кодобаза - меньшая функциональность»

Оно было бы логичным если бы у всех был лаконичный и нераздутый код. Раздутый код добавляет шансы багов, но не добавляет функциональности.

firkax ★★★★★
()
Ответ на: комментарий от firkax

рукалицо.пнг

Если юзер знает рутовый пароль, что ему помешает под рутом зайти напрямую?

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

А, понятно… ты в принципе «специалист по всему» без маломальских знаний по предмету о котором рассуждает.

Ты снова обосрался, как и с виндой, которая «в окружении юзера из под админа прогармму запускает».
Чтобы ты в будущем меньше позорился: 1С-нику придётся думать про апач, ибо он описывает в одном из подмножеств xml сервисы, которые 1с «публикует» на веб сервере. И после их изменения ему надо либо подождать пока 1с по таймауту сессию дропнет, или рестартануть апач, чтобы не ждать.

Хотя, наверное, смысла тебе рассказывать что-то мало. Ты ж собственной безграмотностью бравируешь.

mogwai ★★★★★
()
Ответ на: комментарий от thesis

Затем, чтобы он мог полностью управлять сервисом за который он отвечает. Если он считает, что после того как он какие-то работы выполнил, надо перезапустить веб-сервер, он всё равно к админу придёт с этим требованием. И тот перезапустит. Отвечать на вопрос «почему посреди рабочего дня» всё-равно будет вебдевелупер.

Так зачем эта бюрократия?

mogwai ★★★★★
()
Ответ на: комментарий от firkax

sudo не нужно, бит setuid в правах полностью покрывает эту нужду.

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

mogwai ★★★★★
()
Ответ на: комментарий от mogwai

Если юзер знает рутовый пароль, что ему помешает под рутом зайти напрямую?

PermitRootLogin, очевидно. Ты не знал про эту опцию?

1С-нику придётся думать про апач, ибо он описывает в одном из подмножеств xml сервисы, которые 1с «публикует» на веб сервере

У него есть файл конфига сервисов и есть кнопка «применить конфиг». То, что это реализовано через рестарт апача, и вообще что такое апач, ему знать не надо.

firkax ★★★★★
()
Ответ на: комментарий от mogwai

Разделение прав на запуск бинарника есть нативное в ядре безо всяких доп. утилит. Ты и про группы не знал?

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от mogwai

У вебиста доступ должен быть только к репе, куда он коммитит свои творения, и максимум к нескольким кнопкам их публикации (которая в первом приближении заключается в svn update/git pull из репы на сервер/сервера, а вообще может и дополнительные действия содержать, такие как перегенерация каких-нить кешей или релоады демонов например). Ты же видимо описываешь традиции шаред хостингов с фтп и бардаком.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от router

На серверах обязательно всех удаляю из группы sudo.

Никакого sudo. root только через su -
Но зачем?

Что-бы не работало sudo.
Что-бы кто-нибудь внезапно зашедший по ssh не смог ничего сделать лишнего.
Про ssh и ключи знаю. Но все же.

hbars ★★★★★
()
Ответ на: комментарий от hbars

ок. sudo всего лишь инструмент, один из многих.
реши вышеописанную задачу с помощью своего su.
«необходимо дать веб-макакеюзеру возможность перезапускать несколько демонов в системе. и больше ничего.»

pfg ★★★★★
()
Последнее исправление: pfg (всего исправлений: 1)
Ответ на: комментарий от router

Что-бы кто-нибудь внезапно зашедший по ssh не смог ничего сделать лишнего.

А как внезапно зашедший внезапно получит админскую группу (wheel/sudo)?

Вот для этого в группе sudo никого и нет.

hbars ★★★★★
()
Последнее исправление: hbars (всего исправлений: 1)
Ответ на: комментарий от pfg

«необходимо дать~~веб-макаке~~юзеру возможность перезапускать несколько демонов в системе. и больше ничего.»

Я считаю что «веб-макаке~~юзеру» не нужно давать возможность перезапуск демоны.

hbars ★★★★★
()

Сюдо нужен чтобы тебе любой скрипт из интернета не форматнул диск

запретим молотки они опасны
sudo прекрасный инструмент, но редиска, сложный (поодержка ldap и radius) в реализации ошибки в нем часто случаются.
нет sudo переходить на su где нет ограничений по командам и пользователям, анологичная проблема с установкой суид бита (да и на скрипт не применишь только на исполняймый файл), там более точно тебе форматнут.
нужно разрешить выполнять только этот скрипт, только от этого пользователя под другим пользователем и может даже без пароля вот тебе sudo
короче sudo daos хорошие незаменимые инструменты.

s-warus ★★★
()
Ответ на: комментарий от s-warus

он хотит всем рулить, быть затычкой в каждой дырке, бездельник времени до *** много свободного

Ну да я считаю что юзеру нефиг делать с критичными сервисами.
Свои пусть запускает хоть с & и делает с ними что хочет. И то еще как посмотреть.

hbars ★★★★★
()
Последнее исправление: hbars (всего исправлений: 1)