konfiguracja polecenia sudo

Download Report

Transcript konfiguracja polecenia sudo

Konfiguracja polcenie
SUDO
Wykorzystanie polecenia sudo
w Ubuntu
1.
2.
Sudo jest poleceniem które stosujemy do
instalacji i deinstalacji pakietów w terminalu
(apt-get, aptitude) oraz przy wywołaniu
graficznego interfejsu użytkownika poleceniem
gksudo.
Po uruchomieniu polecenia sudo lub gsudo fakt
uzyskania uprawnień administratora jest
przechowywany w systemie przez 15 min, po
czym należy się znów logować. Użycie polecenia
sudo bash spowoduje, że powłoka systemowa
zostanie uruchomiona z uprawnieniami
administratora, dając nam „wirtualne
konto”root. Dzięki temu, podczas wykonywania
poleceń nie będziemy pytani o hasło.
Działanie polecenia sudo
w Ubuntu
Działanie polecenia sudo jest
kontrolowane przez zawartość piku
/etc/sudoers. Aby zobaczyć jego
zawartość należy użyć polecenia:
$ sudo visudo
Polecenie visudo to spocjalna modyfikacja
polecenia vi, która zapewnia, że plik
może być modyfikowany przez jednego
użytkownika. Nie trzeba też dodawać
argumentów, ponieważ polecenie wie, że
ma otworzyć do edycji plik /etc/sudoers.
1.
Zawartość pliku /etc/sudoers
Default
!lecture.tty_tickets.!fqdn
root
ALL=(ALL) ALL
%amin
ALL=(ALL) ALL
!lecture – wyłacza wypisywanie tekstu informacyjnego
o konsekwencjach wykonania polecenia sudo.
tty_tickets – wymusza konieczność uwierzytelnienia
użytkowników przy korzystaniu z polecenia sudo.
!fqdn – zastosowanie tej opcji powoduje, ze polecenie
sudo będzie sprawdzało za pomoca usługi DNS,
czy próba jego użycia pochodzi z systemu o
poprawnej nazwie domenowej, co wymusza
poprawną konfigurację i dostęp do serwera DNS
Zawartość pliku /etc/sudoers
Jednak najbardziej interesujące i
funkcjonalne są kolene dwa wpisy:
root ALL=(ALL) ALL – definiuje, że
użytkownik root ma dostęp do każdego
polecenia w systemie
%amin ALL=(ALL) ALL – określa dostęp dla
wszystkich członków grupy admin. Ci
użytkownicy również mogą wykonywać
dowolne polecenia
Naprawa uszkodzonego polecenia
sudo
Usuniecie pliku /etc/group lub /etc/sudoers może
spowodować problem z wykonywaniem
uprzywilejowanych operacji. W takim przypadku
należy uruchomić ponownie system, wcisnąć ESC
w celu wyświetlenia men GRUB i wybrać Recovery
Mode, co spowoduje, że system uruchomi się z
powłoką konta root. Następnie sprawdzamy czy
plik /etc/group zawiera grupę admin, jeśli nie
istnieje można ją dodać wpisujac polecenie:
# addgroup –system admin
Następnie należy sprawdzić czy w pliku /etc/sudoers
jest wpis:
%amin ALL=(ALL) ALL , jeśli go tam nie ma to go
wpisujemy.
Dodawanie użytkowników o
prawach administratora
Aby tego dokonać, należy dodać użytkownika do
grupy admina, poleceniem:
Adduser janek admin
Użytkownik janek będzie będzie mógł wykonywać
programów z uprawnieniami administratora
przy pomocy poleceń sudo i gksudo.
ACL (Access control
lists)
Def ACL
ACL według najprostrzej definicji jest listą
użytkowników lub grup wraz z ich
prawami do określonego pliku lub
katalogu. ACL-e umozliwiają definiowanie
szczegółowych zestawów uprawnień np.
tylko użytkownik znowak może zapisać
zmiany w pliku, a zkowalski może go
tylko odczytać.
Największa ich cechą jest to, że każdy
użytkownik może definiować ACLe dla
dowolnych plików, których jest
właścicielem
Przeglad ACL-i w Linuksie
1. Linux obsługuje 2 typu ACLi:
ACL-e do kontroli dostępu do plików i katalogów
ACL-e definiowane na poziomie katalogów, kkreślane jako maski
ACL-i, a służące do definiowania domyślnych ACL-i dla plików i
katalogów tworzonych w danym katalogu
2. ACL-e są reprezentowane w postaci formatów:
Pierwsze pole wpisu ACL to typ wpisu o watości: u(user), g
(group), o (other), m (mask)
Drugie pole to nazwa użytkownika, jego identyfikator, nazwa
grupy lub jej identyfikator
Trzecie pole to def uprawnień: r (read), w (write), x (execute, w
przypadku katalogu służy do przegladania jego zawartości).
Jeśli brak jest jakiegoś uprawnienia, to stosuje się znak: -
Wpisy ACL zapisane w plikach są oddzielone białymi znakami lub
znakami nowego wiersza. Znak # oraz wszystkie znaki
występujące po nim do końca wiersza, są ignorowane.
Instalacja ACL-i w Linuksie
ACL nie jest instalowane wraz z instalacją systemu.
Należy je doinstalować poleceniem np.:
sudo apt-get install acl lub za pomocą menadżera
pakietów Synaptic: System/Administracja/
menadżer pakietów Synaptic i odnaleźć acl
oraz eiciel (graficzny interfejs ACL-a).
Przeglad ACL-i w Linuksie
1. Linux obsługuje 2 typu ACLi:
ACL-e do kontroli dostępu do plików i katalogów
ACL-e definiowane na poziomie katalogów, kkreślane jako maski
ACL-i, a służące do definiowania domyślnych ACL-i dla plików i
katalogów tworzonych w danym katalogu
2. ACL-e są reprezentowane w postaci formatów:
Pierwsze pole wpisu ACL to typ wpisu o watości: u(user), g
(group), o (other), m (mask)
Drugie pole to nazwa użytkownika, jego identyfikator, nazwa
grupy lub jej identyfikator
Trzecie pole to def uprawnień: r (read), w (write), x (execute, w
przypadku katalogu służy do przegladania jego zawartości).
Jeśli brak jest jakiegoś uprawnienia, to stosuje się znak: -
Wpisy ACL zapisane w plikach są oddzielone białymi znakami lub
znakami nowego wiersza. Znak # oraz wszystkie znaki
występujące po nim do końca wiersza, są ignorowane.
Praca z ACL-ami z wiersza poleceń
1. Narzędzia do tworzenia, modyfikacji i
odczytu ACL-i:
-
-
-
chcl – odczyt, modyfikacja i usuwanie
ACL-i plików, katalogów na poziomie
administratora, użytkownika i masek
getfacl – przegladanie ACL-i plików i
katalogów
setfacl – usuwanie ACL-i plików i
katalogów.
Praca z ACL-ami z wiersza poleceń
2. Ustawienie ACL-i z terminala:
- przykładowo w celu dodania użytkownika
znowak do listy użytkowników
uprawnionych do odczytu pliku
informacje.xml zastosuję polecenie:
$ chacl u::rw-, g::---, u:znowak:r--, m::rwinformacje.xml.
Sprawdzając wykonanie powyższego należy
wpisac polecenie:
$ getfacl informacje.xml
Praca z ACL-ami w za pomocą
graficznego interfejscu
Uruchamiamy program eiciel
i postępujemy zgodnie
z instrukcjami programu