Sudo разпределение на разрешения между потребители във FreeBSD, Media UniX
freebsd команди, конфигурация, инсталиране на сървъра и др
sudo разпределение на привилегии между потребители във FreeBSD
Както знаете, винаги да седите под root не е добре, именно за разпределението на правомощията е създадено sudo, а именно за стартиране на програми от името на друг потребител. По този начин, акосървър на FreeBSD се обслужва от няколкопотребителя и всеки има своя собствена задача, отвъд която не трябва да се задълбочава, тогава sudo е това, от което се нуждаете. Нека да преминем към инсталиране наsudo от FreeBSD портове. Стартирайте: cd /usr/ports/security/sudo make config
Опции за компилация: Опции за sudo 1.7.4.4_1 [ ] LDAP С поддръжка на LDAP [ ] ОБИДИ С всички обиди [ ] DISABLE_ROOT_SUDO Деактивиране на root sudo [ ] DISABLE_AUTH Деактивиране на удостоверяване [ ] NOARGS_SHELL Активиране на обвивка без аргументи
Инсталиране: make BATCH=yes -C /usr/ports/security/sudo install clean rehash
След като стане, редактирайте конфигурационния файл: cp /usr/local/etc/sudoers /usr/local/etc/sudoers_0 ee /usr/local/etc/sudoers
По-долу сапримери за редове за добавяне към файла/usr/local/etc/sudoers.
1) Ако искате да разрешите всички програми да се изпълняват от потребители, принадлежащи към групата колело, използвайки вашата парола, тогава трябва да въведете реда: %wheel ALL=(ALL) ALL
2) същото като точка 1, но без да се иска парола, след това добавете реда: %wheel ALL=(ALL) NOPASSWD: ALL
3) Съответно, ако трябва да дадете право да изпълнявате команди на един потребител, добавете: user ALL=(ALL) ALL където user е потребителското име в системата.
4) Ако трябва да позволите на членовете на потребителската група (трябва да са в системата) да рестартират freebsd, тогава въведете: %users localhost=/sbin/shutdown -r сега
5) Ако трябва да дадете права на потребители, които са в различни групи, тогава тези потребители могат да бъдат комбинирани в една група, отново с помощта на файла sudoers. Например, имаме 2 потребители с имена user1 и user2. Във FreeBSD те са в различни групи, но тези потребители трябва да имат право да рестартират. В този случай първо ги комбинираме в една група (да я наречем REBUSER) с реда: User_Alias REBUSER = user1, user2
И сега позволяваме на групата REBUSER да рестартира операционната система: REBUSER ALL=/sbin/reboot
Забележка: % преди REBUSER не е необходим в този случай. Потребителите user1, user2 разбира се трябва да присъстват в системата. /sbin/reboot - команда за рестартиране Ако трябва да създадете няколко групи, след това повторете действието: User_Alias group_name = user_1, user_2 по този начин можете да създадете много групи, на всяка от които са дадени само определени права.
6) Сега си представете ситуацията, че една и съща група REBUSER трябва да изпълни не една команда, а определен списък. В този случай трябва да добавите редовете: User_Alias REBUSER = user1, user2 Cmnd_Alias COMND = /usr/bin/kill, /sbin/reboot, /sbin/shutdown -r сега REBUSER ALL=COMND
тук, само в реда Cmnd_Alias е списък с разрешени команди, обединени от произволно име "COMND".
Можете да създадете няколко псевдонима за команди, например: Cmnd_Alias COMND1 = . Cmnd_Alias COMND2 = . Cmnd_Alias COMND3 = .
И разрешете групата, само тези, които са необходими, например: REBUSER ALL=COMND1, COMND3
Забележка: Имената на псевдонимите (в примерите по-горе "REBUSER", "COMND") трябва да бъдат изписани с главни букви, в противен случай няма да работи.
Това е всичко, от което се нуждаете.