Przesłanianie haseł (Shadow Password): Inne programy, które może musisz uaktualnić albo "załatać".
Następna strona
Poprzednia strona
Spis treści
6. Inne programy, które może musisz uaktualnić albo "załatać".
Pomimo, iż pakiet Shadow Suite posiada zastępcze programy dla
większości programów, które potrzebują dostepu do haseł, to prawie
w każdym systemie są jeszcze dodatkowe programy, które potrzebują
dostępu do haseł.
Jeśli masz dystrybucję Debian (a nawet jeśli nie masz),
możesz znaleźć źródła programów, które muszą być przerobione
pod tym adresem.
Reszta tej sekcji opisuje jak uaktualnić programy: adduser, wu_ftpd, ftpd, pop3d, xlock, xdm i sudo tak, aby obsługiwały
przesłonięte hasła.
Aby dowiedzieć się jak zrobić obsługę przesłoniętych haseł w
jakimkolwiek innym programie zobacz sekcję
Obsługa przesłanianych haseł w programach w C. (Programy te
i tak muszą być uruchomione z bitem "SUID" dla "root-a" albo grupy
shadow, aby rzeczywiście mieć dostęp do haseł.)
6.1 Program adduser z dystrybucji Slackware.
Dystrybucja Slackware (i pewnie inne) zawiera interaktywny program
służący do dodawania nowych użytkowników - /sbin/adduser.
Wersję tego programu obsługującą przesłonięte hasła można pobrać
np. z
ftp.icm.edu.pl z katalogu /pub/Linux/sunsite/system/admin/accounts/.
Ja zalecam używanie programów, które są dostarczane wraz z pakietem
Shadow Suite (useradd, usermod, i userdel)
zamiast adduser z dystrybucji Slackware. Co prawda
nauczenie się jak się nimi posługiwać zabiera trochę czasu, ale
opłaca się to ponieważ masz o wiele większą kontrolę i mają one
poprawne blokowanie plików (file locking) /etc/passwd i
/etc/shadow - adduser tego nie robi.
Więcej informacji w następnej sekcji -
Wprowadzanie pakietu Shadow Suite do użycia..
Ale jeśli już musisz go mieć, oto co musisz zrobić:
tar -xzvf adduser.shadow-1.4.tar.gz
cd adduser
make clean
make adduser
chmod 700 adduser
cp adduser /sbin
6.2 Serwer wu_ftpd.
Wraz z większością dystrybucji Linux-a przychodzi serwer wu_ftpd.
Jeśli twoja dystrybucja nie instaluje domyślnie pakietu Shadow
Suite, to twój serwer wu_ftpd nie będzie skompilowany z
obsługą przesłoniętych haseł. wu_ftpd jest odpalany z
inetd/tcpd jako proces "root-a". Jeśli twój demon
wu_ftpd jest starą wersją, to będziesz chciał ją
uaktualnić tak czy inaczej ponieważ stare wersje mają pewien błąd,
który kompromituje konto "root". (Więcej informacji
znajdziesz na
Stronie Domowej Bezpieczeństwa na Linuxie).
Na szczęście musisz tylko zdobyć żródła tego programu i skompilować
go z włączoną obsługą "Shadow password".
Jeśli nie masz systemu ELF, to serwer wu_ftpd możesz
znaleźć
na SUNSite Polska - nazywa się wu_ftpd-2.4-fixed.tar.gz
Jak już ściągniesz te źródła, to wtedy napisz:
cd /usr/src
tar -xzvf wu-ftpd-2.4-fixed.tar.gz
cd wu-ftpd-2.4-fixed
cp ./src/config/config.lnx.shadow ./src/config/config.lnx
Potem zmień w pliku ./src/makefiles/Makefile.lnx linię:
LIBES = -lbsd -support
na:
LIBES = -lbsd -support -lshadow
Teraz możesz uruchomić skrypt kompilujący i zainstalować pakiet:
cd /usr/src/wu-ftpd-2.4-fixed
/usr/src/wu-ftp-2.4.fixed/build lnx
cp /usr/sbin/wu.ftpd /usr/sbin/wu.ftpd.old
cp ./bin/ftpd /usr/sbin/wu.ftpd
Polecenia te powodują użycie pliku konfiguracyjnego z obsługą haseł
przesłanianych dla Linux-a, skompilowanie i instalację serwera.
U siebie na Slackware 2.3 musiałem dodatkowo przed kompilacją
zrobić coś takiego:
cd /usr/include/netinet
ln -s in_systm.h in_system.h
cd -
Zgłaszane były problemy z kompilacją na systemie binarnym ELF, ale
wersja BETA następnej wersji działa dobrze. Można ją znaleźć pod
adresem
ftp.icm.edu.pl pod nazwą wu-ftp-2.4.2-beta-10.tar.gz.
Jak już ściągniesz serwer umieść go w /usr/src i napisz:
cd /usr/src
tar -xzvf wu-ftpd-2.4.2-beta-9.tar.gz
cd wu-ftpd-beta-9
cd ./src/config
Potem zmień w pliku config.lnx:
#undef SHADOW.PASSWORD
na:
#define SHADOW.PASSWORD
Potem:
cd ../Makefiles
i zmień w pliku Makefile.lnx
LIBES = -lsupport -lbsd # -lshadow
na:
LIBES = -lsupport -lbsd -lshadow
Następnie skompiluj i zainstaluj:
cd ..
build lnx
cp /usr/sbin/wu.ftpd /usr/sbin/wu.ftpd.old
cp ./bin/ftpd /usr/sbin/wu.ftpd
Zauważ, że powinieneś sprawdzić w /etc/inetd.conf katalog,
w którym twój serwer rzeczywiście się znajduje. Powiadomiono mnie,
że niektóre dystrybucje umieszczają demony serwerów w innych
miejscach, a wtedy wu_ftpd może się znajdować gdzie indziej.
6.3 Standardowy ftpd.
Jeśli masz u siebie standardowy serwer ftpd, zalecałbym
zmianę na wu_ftpd. Poza znaną dziurą omówioną wcześniej,
wu_ftpd jest uznany za bardziej bezpieczny.
Jeśli nalegasz na standardowy, albo potrzebujesz obsługi
NIS, to
na SUNSite Polska znajdziesz ftpd-shadow-nis.tgz.
6.4 pop3d (Post Office Protocol 3)
Jeśli potrzebujesz obsługi Post Office Protocol 3, będziesz
musiał skompilować ponownie program pop3d. Normalnie jest
on uruchamiany przez inetd/tcpd jako "root".
Na SUNSite Polska dostępne są dwie wersje:
pop3d-1.00.4.linux.shadow.tar.gz
pop3d+shadow+elf.tar.gz
Obie są raczej proste do zainstalowania.
6.5 xlock
Jeśli zainstalujesz pakiet Shadow Suite i uruchomisz
XWindows, a następnie zablokujesz (lock) ekran nie
uaktualniając programu xlock, będziesz musiał użyć
CTRL+ALT+Fx, aby przełączyć się na wirtualną konsolę
tekstową (jeśli masz jakąś), zalogować się i zlikwidować proces
xlock (albo użyć CTRL+ALT+BACKSPACE żeby zamknąć
XWindows). Na szczęście uaktualnienie programu xlock jest
dość proste.
Jeśli masz XFree86 wersja 3.x.x, przypuszczalnie używasz
xlockmore (który jest wspaniałym "screensaver-em" w
połaczeniu z "lock"). Następujący pakiet obsługuje przesłonięte
hasła - xlockmore-3.5.tgz a dostępny jest z
SUNSite Polska. Jeśli masz starszą wersję zalecam
uaktualnienie do tej.
Oto "z grubsza" to, co musisz zrobić:
Ściągnij xlockmore i umieść w /usr/src
rozpakuj: tar -xzvf xlockmore-3.7.tgz
zmień w pliku /usr/X11R6/lib/X11/config/linux.cf linię
#define HasShadowPasswd NO
na:
#define HasShadowPasswd YES
skompiluj pliki wykonywalne:
cd /usr/src/xlockmore
xmkmf
make depend
make
potem przenieś wszystko w odpowiednie miejsce i uaktulanij
prawa dostępu i właścicieli plików
cp xlock /usr/X11R6/bin/
cp XLock /var/X11R6/lib/app-defaults/
chown root.shadow /usr/X11R6/bin/xlock
chmod 2755 /usr/X11R6/bin/xlock
chown root.shadow /etc/shadow
chmod 640 /etc/shadow
Twój xlock będzie teraz działał poprawnie.
6.6 xdm
xdm jest programem, który prezentuje ekran "logujący" dla
XWindows. Niektóre systemy startują ten program kiedy system ma się
uruchomić w odpowiednim "runlevel-u" (zobacz /etc/inittab).
Jeśli zainstalowałeś przesłaniane hasła, musisz uaktulanić ten
program. Na szczęście jest to dość proste:
xdm.tar.gz można ściągnąć z
SUNSite Polska.
Ściągnij ten plik i umieść go w /usr/src, potem go
rozpakuj: tar -xzvf xdm.tar.gz.
Zmień w pliku /usr/X11R6/lib/X11/config/linux.cf linię
#define HasShadowPasswd NO
na:
#define HasShadowPasswd YES
Skompiluj pliki wykonywalne:
cd /usr/src/xdm
xmkmf
make depend
make
Potem umieść wszystko na swoim miejscu cp xdm /usr/X11R6/bin/.
xdm jest uruchamiany jako "root" tak więc nie musisz
zmieniać jego praw dostępu.
6.7 sudo
Program sudo pozwala administratorowi na udostępnianie
zwykłym użytkownikom programów, które wymagają uprawnień
"root-a". Jest to pożyteczne ponieważ można ograniczać dostęp do
konta "root" i jednocześnie pozwalać użytkownikom np. montować
urządzenia.
sudo musi przeczytać hasło ponieważ weryfikuje użytkownika
kiedy jest uruchamiane. sudo jest uruchamiane z bitem SUID
"root" tak więc nie ma problemu z dostępem do pliku /etc/shadow.
Program ten z obsługą haseł przesłanianych dostępny jest
na SUNSite Polska pod nazwą sudo-1.2-shadow.tgz.
Uwaga: Podczas instalacji tego programu usunięty zostanie
plik /etc/sudoerrs i zastąpiony domyślnym przychodzącym
razem z pakietem. Tak więc zrób sobie kopię zapasową jeśli robiłeś
tam jakieś zmiany. Albo możesz usunąć linijkę kasującą ten plik z
pliku Makefile.
Obsługa przesłanianych haseł jest już ustawiona w pakiecie, tak
więc wszystko co trzeba zrobić, to przekompilować go. Po
umieszczeniu go w /usr/src napisz:
cd /usr/src
tar -xzvf sudo-1.2-shadow.tgz
cd sudo-1.2-shadow
make all
make install
6.9 pppd (Serwer Protokołu Point-to-Point)
Serwer pppd może zostać tak ustawiony, aby używał różnych typów
autentykacji:
Password Authentication Protocol (PAP) i Cryptographic
Handshake Authentication Protocol (CHAP). Serwer pppd zwykle
czyta łańuchy haseł z /etc/ppp/chap-secrets
i/albo z /etc/ppp/pap-secrets. Jeśli używasz tego
domyślnego zachowania serwera pppd, to przeinstalowywanie go nie
jest konieczne.
pppd pozwala także na użycie parametrów login-u (albo z
wiersza poleceń, albo z pliku konfiguracyjnego, albo z pliku z
opcjami). Jeśli jest podana jakaś opcja login-u, to pppd
użyje pliku /etc/passwd, żeby zweryfikować identyfikator i
hasło dla PAP. To oczywiście nie zadziała odkąd nasz plik z hasłami
jest przesłaniany. Jeśli używasz pppd-1.2.1d, to będziesz musiał
dodać kod do obsługi haseł przesłanianych.
Podany w dalszej części przykład dodaje obsługę dla tej właśnie wersji.
Wersja pppd-2.2.0 ma już w sobie obsługę przesłanianych haseł.
Następna strona
Poprzednia strona
Spis treści
Wyszukiwarka
Podobne podstrony:
Shadow Password HOWTO pl 10 (2)Shadow Password HOWTO pl 8 (2)Shadow Password HOWTO pl (3)Shadow Password HOWTO pl 5 (2)Shadow Password HOWTO pl (2)Shadow Password HOWTO pl 9 (2)Shadow Password HOWTO pl 2 (2)Shadow Password HOWTO pl 7 (2)Shadow Password HOWTO pl 1 (2)Shadow Password HOWTO pl 4 (2)Shadow Password HOWTO pl 3 (2)Shadow Password HOWTO plshadow password howto 4 wrjj4xl2rttpywxk645hll3i63bvo7zfmqmiewy wrjj4xl2rttpywxk645hll3i63bvo7zfmqmishadow password howto 5 xwj2yqx7sdr7adin3jsjtftaoqyivxcflwawaqa xwj2yqx7sdr7adin3jsjtftaoqyivxcflwawshadow password howto 2 foxyypsfur2dgvcm757tzpjjjqzxkvhcxqxuazi foxyypsfur2dgvcm757tzpjjjqzxkvhcxqxushadow password howto xaxuxvyqvflgb5m452rbxlszzlk756szuoenxpa xaxuxvyqvflgb5m452rbxlszzlk756szuoenxpshadow password howto 6 wekeaom5hhmqmfgscm4mih3yeed3zer56aqewwa wekeaom5hhmqmfgscm4mih3yeed3zer56aqeshadow password howto 9 rrzkcxlxnah6g6g76dgcjvmvfeeihhseu43rxfi rrzkcxlxnah6g6g76dgcjvmvfeeihhseu43rshadow password howto 1 jvl6nxop7fpn62s67zmft74rytj65xu7oqy4xdi jvl6nxop7fpn62s67zmft74rytj65xu7oqy4więcej podobnych podstron