Jeżeli ładowanie trwa zbyt długo (powyżej 2 min.), to zapraszam o innej porze. Zobacz statystyki odwiedzin by ustalić porę najmniejszego obciążenia serwera.
Jeżeli pragniesz poznać Linuksa Mandrake (obecnie Mandriva), to... dobrze trafiłeś. Witryna została zauważona przez twórców magazynu KOMPUTER ŚWIAT 5/2004(141) str. 46 poprzez umieszczenie linku oraz magazynu CHIP 4/2004 (str.114) poprzez umieszczenie artykułu opisującego ten serwis internetowy. Jak na hobbystyczną stronę o Linuksie to miłe ;) Acha... na stronie mandrakelinux.pl/informacje podano też link z opisem cytuję "duży zbiór praktycznych informacji o Mandrake" (mam ją w swoim archiwum).
Zapraszam do zadawania pytań na FORUM oraz mailem. Chętnie udzielę (bezpłatnie) odpowiedzi. Oficjalne ceny za jedną poradę na stronie MandrakeSoftPL (mam ją w moim archiwum z dnia 2.05.2004) wahają się od 20 do 350 zł.
Strona powstała w oparciu o Mandrake 9.0, ale nie ma to większego znaczenia, gdyż logika ustawiania zabezpieczeń zleceniem msec jest w każdym Mandrake/Mandriva podobna. Skrypty MSEC (czyli Mandrake SECURITY) w zależności od POZIOMU BEZPIECZEŃSTWA przeczesują dyski i
sprawdzają (oraz wentualnie poprawiają) prawa dostępu. Ponadto sprawdzają, czy nastąpiły zmiany zawartości kluczowych plików konfiguracyjnych oraz czy doinstalowywano/odinstalowywano jakieś programy.
Teoretycznie mamy pięć POZIOMÓW BEZPIECZEŃSTWA, jednak z tego praktycznie tylko 3:
Poziom (5)PARANOID czyli
najwyższy poziom bezpieczeństwa uzyskany za pomocą zlecenie msec 5 - blokuje pracę serwerów i daje pełne
bezpieczeństwo. Ręczne wprowadzanie bardziej restrykcyjnych zmian
może zagrozić stabilności systemu.
Poziom (4)WYŻSZY dla
SERWERÓW uzyskany za pomocą zlecenia msec 4, jest przewidziany do pracy na komputerze
udostępniającym usługi sieciowe. Podczas instalacji Mandrake
powinieneś wybrać (bez względu na przyszłe plany) PODWYŻSZONY(4)
dla serwerów POZIOM BEZPIECZEŃSTWA. Zapewnisz sobie w ten sposób
możliwość pracy z dwa Kernelami: zwykłym oraz secure. Uwaga: Mandriva w wersji darmowej nie udostępnia Kernela secure.
Poziom (3)WYSOKI dla STACJI
to propozycja dla użytkowników komputerów pracujących w domowej
podsieci z wyjściem na Internet poprzez router.
Jeżeli Twoja sieć
nie ma dostępu do Internetu, to po instalacji możesz wybrać najniższy poziom np. [1] lub [2] za pomocą polecenia msec
1 (lub msec 2). Pamiętaj jednak, że pliki systemowe będą wówczas
narażone na bezmyślne działanie kolegi, albo pani z biura. Grozi to
wysadzeniem Linuksa ;)
Sposoby zmiany POZIOMÓW BEZPIECZEŃSTWA:
Pod KDE za pomocą polecenia -MANDRAKE CONTROL
CENTER- BEZPIECZEŃSTWO- POZIOM BEZPIECZEŃSTWA. Tutaj mam uwagę:
niestety KDE nie jest jeszcze doskonałe (nie mylić z LINUXEM ;) i
można mocno się rozczarować konfigurując system druidami. Na
przykład zmiana poziomu bezpieczeństwa w MANDRAKE CONTROL CENTER z
średniego [3] na wysoki [4] może skutkować zawieszeniem SDI-HISa
(źle ustawiony firewall-shorewall). Zamiana poziomów bezpieczeństwa
wykonana z poziomu powłoki tekstowej (zleceniem msec 4) jest nieszkodliwa.
Wydając polecenie (jako root) msec 4 (aby ustawić poziom 4). Jeżeli coś namieszałeś w
ustawieniach systemu, to daj polecenie msec 1 i
restartuj system. Następnie msec 3 i po
restarcie msec 4. Co ciekawe - w ten sposób nie
zablokujesz sobie SDI.
Informacja o aktualnym poziomie
bezpieczeństwa jest zapisana w pliku /etc/sysconfig/msec. Ponadto warto przejrzeć zawartość plików:
/usr/share/msec/level.x , perm.x oraz msec.py
(oczywiście x oznacza tutaj poziom
bezpieczeństwa). I tak np. plik level.4 zawiera
informacje o tym, jak zachowują się poszczególne moduły w czwartym
poziomie. Natomiast perm.4, to propozycje
programu msec dotyczące ustawienia praw dla
wybranych plików i katalogów.
MSECw czwartym poziomie (uzyskanym poprez zlecenie msec 4
lub wybranie podczas instalacji WYŻSZRGO DLA SERWERÓW POZIOMU
BEZPIECZEŃSTWA) jest uruchamiany regularnie za pomocą CRONa
(poprzez pliki /etc/cron.hourly oraz cron.daily) w dwóch wersjach: co
godzinę (tylko podstawowe czynności np. zerowanie praw wg wzorca z
plikuperm.4)
oraz raz dziennie (kompleksowa kontrola systemu wraz z ponownym
zerowaniem praw do katalogów i plików wg wzorca z plikówperm.4,level.4). Rozumiesz teraz
dlaczego konta www, ftp Twoich użytkowników czasami bez jasnego
powodu przestają działać? Rozwiązaniem jest korekta pliku
/usr/share/msec/perm.4 (lub mniej finezyjne wklepywanie w razie potrzeby polecenia
chmod 711 /home/użytkownik).
Najwięcej problemów u użytkowników stwarzają automatyzmy zabezpieczające system poprzez np. zerowanie praw dostępu. Są one sensowne, ale
niestety przy okazji... kłopotliwe. Jeżeli zdecydowałeś się obniżyć
bezpieczeństwo systemu w celu ułatwienia użytkowania, to po
ustaleniu POZIOMU BEZPIECZEŃSTWA na czwartym poziomie (zleceniem
msec 4) doszlifuj irytujące parametry stosując poniższe porady.
Brak możliwości restartu systemu przez zwykłego
użytkownika oraz brak możliwości zalogowania się bezpośrednio
pod rootem - po wprowadzeniu parametrów msec 4. Jest to
niestety uciążliwe, gdyż trzeba zalogować się jako zwykły
użytkownik, potem dać zlecenie su (i hasło roota). Aby
obejść zabezpieczenia należy wyedytować pliki /usr/share/msec/level.4 oraz msec.py
W pliku /usr/share/msec/level.4 znajdź
wiersze:
allow_rebootno allow_root_loginno
i zamień na:
allow_rebootyes allow_root_loginyes
Natomiast w pliku /usr/share/msec/msec.py znajdź
wiersze:
# differences between level 4,5 and others
if level >= 4:
set_user_umask('077')
set_shell_history_size(10) allow_root_login(no)
enable_sulogin(yes)
allow_user_list(no)
enable_promisc_check(yes)
accept_icmp_echo(no)
accept_broadcasted_icmp_echo(no)
accept_bogus_error_responses(no) allow_reboot(no)
enable_at_crontab(no)
i zamień na:
# differences between level 4,5 and others
if level >= 4:
set_user_umask('077')
set_shell_history_size(10) allow_root_login(yes)
enable_sulogin(yes)
allow_user_list(no)
enable_promisc_check(yes)
accept_icmp_echo(no)
accept_broadcasted_icmp_echo(no)
accept_bogus_error_responses(no) allow_reboot(yes)
enable_at_crontab(no)
Po wykonaniu poprawek nie wystarczy restartować systemu. Trzeba
wcześniej dać jako root zlecenie msec 4.
Uwaga: w Mandrake/Mandriva istnieje skrypt umożliwiający bezpośrednie logowanie do
systemu na roota. Konfigurujemy go za pomocą pliku /etc/securetty
Automatyczne nadawanie praw do wybranych plików i
katalogów przez program msec. Szczególnie mam tu na
myśli:
prawa do katalogów w /home
prawa do katalogów /mnt (oraz ewentualnie
/mnt/floppy )
Podobny problem powstanie w przypadku
zainstalowanego serwera SAMBA i praw do katalogu
/home/public
Jeżeli dokładnie się przyglądniesz plikowi
/usr/share/msec/perm.4 to zauważysz, że katalogi
w /home mają prawa 700. Oczywiście zablokuje to
odczyt zawartości kont www oraz ftp u prywatnych użytkowników. Stąd
należy w perm.4 dopisać na końcu pliku nowe wiersze typu: /home/antek antek.antek 711, a
następnie dać zlecenie (jako root) msec 4 oraz ew.
restartować system.Patrz na poniższy przykład plikuperm.4.
Jeżeli przyglądniesz się plikowi /usr/share/msec/perm.4 to zauważysz, że katalog /mnt ma
prawa 750 co praktycznie odcina zwykłego użytkownika od
możliwości zamontowania CD-ROM, flopka oraz partycji windowsowych
mających swój punkt montowania w /mnt/win. Stąd należy w perm.4 zmienić wpis na: /mnt root.adm 755
oraz dopisać nowy wiersz /mnt/floppy root.adm 777
Po wykonaniu poprawek nie wystarczy restartować systemu. Trzeba
wcześniej dać jako root zlecenie msec 4.
*
Na moim Linuksie dodatkowo utworzyłem prosty skrypt ustalający prawa do katalogów i w cronie odpalam go co minutę. Przykładowa zawartość skryptu:
#!/bin/sh
chmod 755 /mnt
chmod 777 /mnt/floppy
Pamiętaj, że prawa dostępu plików w katalogach /mnt/win_c, /mnt/floppy , /mnt/cd-rom są kontrolowane przez wpisy w pliku
/etc/fstab. Więcej informacji znajdziesz na stronie montowanie.php.
Można narzucić domyślnie ustalane prawa dla nowych plików roota lub userów. W plikach /usr/share/msec/level.? jest wpis set_user_umask (lub set_root_umask), co znaczy ustaw maskę usera/roota. Domyślne wartości wynikają z logiki poziomów bezpieczeństwa i nie jest wskazane zmieniać tego.
Opis oznaczeń:
002 daje maskę 775 (pełny dostęp dla właściciela i grupy, a dla innych tylko dostęp do odczytu i uruchomienia, bez prawa do modyfikacji)
022 daje maskę 755 (pełny dostęp dla właściciela, a dla grupy i innych tylko dostęp do odczytu i uruchomienia, bez prawa do modyfikacji)
0 daje maskę 777 (pełny dostęp dla wszystkich)
077 daje maskę 700 (dostęp tylko dla właściciela)
Niestety - powyższe propozycje zmian obniżają
bezpieczeństwo systemu. Należy je więc stosować po przemyśleniu co
ważniejsze: bezpieczeństwo czy przyjazność systemu wobec
użytkownika.
Przykładowa (poprawiona na kolorowo) treść pliku
/usr/share/msec/perm.4
Oczywiście miło jest popatrzeć na powyższe
zestawienie, ale do zaawansowanej analizy bezpieczeństwa
potrzebujemy bardziej przejrzystej formy i w dodatku z możliwością
porównania: czym się różnią zabezpieczenia w trzecim, czwartym i
piątym poziomie bezpieczeństwa. Ponieważ czasami brakowało mi
wykazu zawierającego prawa plików i katalogów w zależności od
stopnia zabezpieczenia, wykonałem mrówczą pracę polegającą na
wklepaniu cyferek do tabelki, którą umieściłem na samym dole tej strony. Jeżeli dobrze się przyglądniesz,
to zauważysz, że nie posiadasz w swoim systemie wszystkich
wymienionych tam plików. I nic nie szkodzi.
Tabelka zawiera dane pobrane z Mandrake 9.0, ale nie
powinno to przeszkadzać użytkownikom nowszych dystrybuji, gdyż od
strony "zaplecza" systemu (układ katalogów i praw) niewiele się
zmienia od lat.
Na zielono zaznaczyłem prawa
najwyższego (5), automatycznie robionego poziomu bezpieczeństwa.
Jeżeli prawa poziomu PARANOID(5) nie różniły się od praw
przewidzianych dla poziomu dla SERWERÓW(4) to zostawiłem jedynie
wpis z poziomu (4). Jeżeli jesteś nawiedzonym administratorem,
który lubi chorobliwie zabezpieczać swój komputer, to pamiętaj, że
prawa PARANOID są najbardziej wyśrubowanymi z dostępnych praw. Nie przekraczaj więc tej granicy bezpieczeństwa, bo...
pewnego dnia nie uruchomisz systemu ;)
Na czerwono zaznaczyłem katalogi
i pliki, w których prawa własności są związane z konkretnym
użytkownikiem (np. katalogi /home/*)
Szary
kolor to pliki i katalogi, których u mnie nie ma (bo nie
chciało mi się zainstalować np. serwera telnet ;).
Mandrake 9.0
dla SERWERÓW (4) i prawa PARANOID (5)
Mandrake 9.0 dla STACJI (3)
ŚCIEŻKA
UŻYTKOWNIK
GRUPA
PRAWA
ŚCIEŻKA
UŻYTKOWNIK
GRUPA
PRAWA
/.autofsck
root
root
644
/.gconfd/
root
root
700
/.mozilla
root
root
755
/
root
adm
751
Jest to ciekawa opcja - nadaje prawa do
użytkowania katalogu głównego (tutaj zwykły użytkownik może
tylko uruchamiać pliki bez możliwości listowania
katalogów).
/bin/
root
adm
751 / 711
/bin/
root
root
755
/bin/ping
root
ntools
4750 -rwsr-x---
/bin/ping
root
root
4755
-rwsr-xr-x
/bin/rpm
rpm
rpm
750
/bin/rpm
rpm
rpm
755
/boot/
root
ctools
710
/boot/
root
root
755
/dev/
root
root
711
/dev/
root
root
755
/etc/
root
adm
711
/etc/
root
root
755
/etc/ conf.modules
lub
modules.conf
root
adm
640 / 600
/etc/ conf.modules
lub
modules.conf
root
root
644
/etc/cron.d
root
adm
755 / 700
Nie jestem pewien, jakie prawa nadać. 755 i 700
są jedynie moimi testowymi ustawieniami.
/etc/
cron.daily/
root
adm
750 / 700
/etc/
cron.daily/
root
root
755
/etc/
cron.hourly/
root
adm
750 / 700
/etc/
cron.hourly/
root
root
755
/etc/
cron.monthly
root
adm
750 / 700
/etc/
cron.monthly
root
root
755
/etc/
cron.weekly
root
adm
750 / 700
/etc/
cron.weekly
root
root
755
/etc/crontab
root
adm
640 / 600
/etc/crontab
root
root
644
/etc/dhcpd.conf
root
root
664
/etc/dhcpd.conf
root
root
664
/etc/dhcpd/
root
adm
750 / 700
/etc/dhcpd/
root
root
755
/etc/dhcpd/*
root
adm
640 / 600
/etc/dhcpd/*
root
root
644
/etc/ftpaccess
root
adm
640 / 600
/etc/ftpaccess
root
root
644
/etc/
ftpconversions
root
adm
640 / 600
/etc/
ftpconversions
root
root
644
/etc/ftpgroups
root
adm
640 / 600
/etc/ftpgroups
root
root
644
/etc/ftphosts
root
adm
640 / 600
/etc/ftphosts
root
root
644
/etc/ftpusers
root
adm
640 / 600
/etc/ftpusers
root
root
644
/etc/gettydefs
root
adm
640 / 600
/etc/gettydefs
root
root
644
/etc/
hosts
root
daemon
644 / 640
/etc/
hosts
root
root
644
/etc/
hosts*
root
daemon
644 / 640
/etc/
hosts.*
root
root
644
/etc/
hosts.equiv
root
daemon
640
/etc/
hosts.equiv
root
root
644
/etc/
inetd.conf
root
adm
640 / 600
/etc/
inetd.conf
root
root
644
/etc/inittab
root
adm
640 / 600
/etc/inittab
root
root
644
/etc/ld.so.conf
root
adm
640 / 600
/etc/ld.so.conf
root
root
644
/etc/mandrake-relase
root
adm
640 / 600
/etc/mandrake-relase
root
root
644
/etc/motd
root
adm
644
Plik /etc/motd zawiera treść komunikatu
wyświetlanego podczas logowania. Prawa nie mają więc większego
znaczenia.
/etc/printcap
root
lp
640
/etc/printcap
root
root
644
/etc/
profile.d/
oraz profile.d/*
root
root
755
/etc/
profile.d/
oraz profile.d/*
root
root
755
/etc/rc.d/
root
adm
750 / 700
/etc/rc.d/
root
root
755
/etc/rc.d/init.d/
root
adm
750 / 700
/etc/rc.d/init.d/
root
root
755
/etc/rc.d/init.d/*
root
adm
740 / 700
/etc/rc.d/init.d/*
root
adm
755
/etc/rc.d/init.d/
mandrake_con
smap
root
adm
644
/etc/rc.d/init.d/
mandrake_co
nsmap
root
root
644
/etc/securetty
root
root
640 / 600
/etc/securetty
root
root
644
/etc/
sendmail.cf
root
mail
640
/etc/
sendmail.cf
root
mail
644
/etc/
shutdown.allow
root
adm
640 / 600
/etc/
shutdown.allow
root
root
644
/etc/ssh/
ssh_config
root
root
644
/etc/ssh/
ssh_config
root
root
644
/etc/ssh/
ssh_*key
root
adm
600
/etc/ssh/
ssh_*key
root
root
600
/etc/ssh/
ssh_*key.pub
root
adm
644
/etc/ssh/
ssh_*key.pub
root
root
644
/etc/ssh/
sshd_config
root
adm
640 / 600
/etc/ssh/
sshd_config
root
root
644
/etc/sysconfig
root
adm
751 / 711
/etc/sysconfig
root
root
755
/etc/
syslog.conf
root
adm
640 / 600
/etc/
syslog.conf
root
adm
640
/etc/
updatedb.conf
root
adm
640 / 600
/etc/
updatedb.conf
root
root
644
/home/
root
adm
751 / 711
/home/
root
root
755
/home/*
Jeżeli użytkownik ma konto www, ftp to daj
711
current
current
700
/home/*
Current
Current
711
/initrd/
root
root
755
/initrd/
root
root
755
/lib/
root
adm
751 / 711
/lib/
root
root
755
/mnt/
root
adm
750 / 710
/mnt/
root
root
755
Uwaga: /mnt 750 uniemożliwia zwykłemu
użytkownikowi korzystanie z CD-ROMu i flopka. Jeżeli nie masz w
/mnt nic więcej poza CD-ROM, flopkiem, czyli nie masz
partycji Windows, odległych dysków udostępnianych za pomocą Samby
itd. to zaryzykuj i zmień prawa na /mnt 755. Dopisz też
ponizej nowy wiersz /mnt/floppy root.adm 777
Uwaga: z powodu namnożenia się różnych złodziejskich witryn, które kopiują moje strony i umieszczają je u siebie wraz z komercyjnymi reklamami (na których zarabiają) informuję, że wszelkie prawa są zastrzeżone.
Zainteresowanych witryną gorzow-wlkp.pl/linux zapraszam do pobrania spakowanej wersji w formacie RAR.
Witryna była dostępna pod adresami:
strony.wp.pl/wp/twarogal , strony.wp.pl/wp/linuxtwarka ,
twarogal.republika.pl , klub.chip.pl/twarogal oraz gorzow-wlkp.net
(w latach 2003/04).