LINUX-BG   Адрес : http://www.linux-bg.org
Делегиране на права чрез /etc/sudoers
От: phantomlord
Публикувана на: 15-03-2006
Адрес на статията: http://www.linux-bg.org/cgi-bin/y/index.pl?page=article&id=advices&key=380821718
В Linux, за да конфигурирате основни параметри на системата са ви необходими правата на su/root. Сигурно ви е писнало да му пишете паролата, когато ви е нужно да правите това. Има много лесен начин да използвате правата на root без да му пишете паролата и той се състои в редакция на файлът /etc/sudoers и използване на sudo. След като направите промените, които ще посоча по-долу, ще можете да изпълните която и да е команда, без да е необходимо да въвеждате паролата на root.

Ето един прост пример как да редактирате /etc/sudoers:

# User alias specification
User_Alias FULLTIMERS = юзъра_ви

# User privilege specification
FULLTIMERS ALL = NOPASSWD: ALL


Така ще можете да стартирате която и да е програма или команда с привилегиите на  su/root,  без парола, като напишете sudo преди нея.
Пример:

sudo synaptic

Възможностите на sudo са далеч по-големи, но са необходими когато един компютър се използва от повече от един потребител. Можете да зададете права на потребителите да изпълняват определени команди с или без парола.

Ето пример какво и къде да редактирате:

# User alias specification
User_Alias FULLTIMERS = user1, user2, user3
User_Alias PARTTIMERS = user4, user5
User_Alias OTHERS = user6, user7

# Cmnd alias specification
Cmnd_Alias    SHUTDOWN = /sbin/shutdown
Cmnd_Alias    REBOOT = /sbin/reboot
Cmnd_Alias    INIT = /sbin/init
Cmnd_Alias    DEBUTILS = /usr/bin/apt-get
Cmnd_Alias    GEDIT = /usr/bin/gedit
Cmnd_Alias    SYNAPTIC = /usr/sbin/synaptic

# User privilege specification
FULLTIMERS ALL = NOPASSWD: ALL
PARTTIMERS ALL = ALL
OTHERS ALL = NOPASSWD: SHUTDOWN, REBOOT, INIT
OTHERS ALL =  DEBUTILS,  GEDIT,  SYNAPTIC


В първата секция User alias specification са групирани отделните потребители. В секцията Cmnd alias specification е списъкът на командите, които могат да се използват чрез sudo. В User privilege specification са правата на отделните групи. Потребителите в групата FULLTIMERS могат да изпълняват която и да е команда без парола. Потребителите от PARTTIMERS могат да изпълнят която и да е команда, но ще трябва да я потвърдят с паролата си. Потребителите от OTHERS могат да изпълняват само командите дефинирани в Cmnd alias specification, като за SHUTDOWN, REBOOT, INIT няма да им трябва парола, докато за DEBUTILS,  GEDIT,  SYNAPTIC ще им бъде необходима.

Това е само пример, който да илюстрира накратко възможностите на sudo. Те са многократно по-големи, но са нужни само на системни администратори, които да задават определени привилегии на определени потребители на една машина. Коригирайте примера по свой вкус и нужди.

Още информация:
http://www.gratisoft.us/sudo/man/sudoer...

<< "Sony Ericsson K750 и Linux" 2 | Оптимизация на iptables и tc правила >>

Авторите на сайта, както и техните сътрудници запазват авторските права върху собствените си материали публикувани тук, но те са copyleft т.е. могат свободно да бъдат копирани и разпространявани с изискването изрично да се упоменава името на автора, както и да се публикува на видно място, че те са взети от оригиналния им URL-адрес на този сървър (http://www.linux-bg.org). Авторските права на преводните материали принадлежат на техните автори. Ако с публикуването тук на някакъв материал неволно са нарушени нечии права - след констатирането на този факт материалът ще бъде свален.

All trademarks, logos and copyrights mentioned on this site are the property of their respective owners.
Linux is copyright by Linus Torvalds.
© Линукс за българи ЕООД 2007
© Slavei Karadjov 1999 - 2006

All rights reserved.

Изпълнението отне: 1 wallclock secs ( 0.17 usr + 0.02 sys = 0.19 CPU)