[devel] sucap + execcap = ...
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Вт Июн 13 19:30:11 MSD 2006
On Tue, Jun 13, 2006 at 07:04:18PM +0400, Alexey Tourbin wrote:
> On Tue, Jun 13, 2006 at 04:13:33PM +0400, Dmitry V. Levin wrote:
> > On Tue, Jun 13, 2006 at 02:06:48PM +0400, Alexey Tourbin wrote:
> > > Из cron.daily нужно запускать программу на шелле (примерно как osec),
> > > при этом желательно выполнять программу от псевдопользователя и
> > > сбросить все права, кроме CAP_DAC_READ_SEARCH (которые должны быть как у
> > > рута). Как это сделать с помощью libcap-utils?
> > >
> > > # sucap at at ls
> > > Caps: =ep cap_setpcap-ep
> >
> > Без setpcap с помощью sucap никак не сделать.
>
> А как с setpcap сделать?
>
> # su -l nobody -s /bin/sh -c 'sleep 999999' &
> [1] 14437
> # /sbin/setpcaps -q cap_dac_read_search=eip $!
> [caps set to:
> = cap_dac_read_search+eip
> ]
> Failed to set cap's on process `14437': (Operation not permitted)
В общем есть типовая задача: рут хочет запускать скрипты
с пониженными привилегями (от псевдопользователя), но с некоторыми
рутовыми capabilities.
At some point, I decided I'd like to run a certain program non-root
with certain capabilities only. I looked at the above two programs
and stupidly thought they'd actually allow me to do this.
http://www.uwsg.iu.edu/hypermail/linux/kernel/0503.1/2540.html
Оказывается, что приемлемого решения этой типовой задачи нет.
Что нужно, вроде ясно:
suexeccap -u $uid -g $gid -c $cap -- qa-robot -m root на localhost psec /lib /usr/lib
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип : application/pgp-signature
Размер : 191 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20060613/51ad8c23/attachment-0001.bin>
Подробная информация о списке рассылки Devel