Jak odwrócić zaistniałą sytuację?
: 16 lutego 2009, 23:24
Witam. Skorzystałem z opisu miny86 pierwsze kroki po instalacji Slackware, myślałem, że Linux to Linux no ale chyba nie do końca to jego www http://mina86.com/2008/02/12/pierwsze-k ... ackware-a/
A ja opiszę co zrobiłem i co się stało w efekcie:
Efekt pracy po zalogowaniu się na konsole:
Jak wyloguję się teraz z konsoli to już po mnie, jak to odwrócić?
A ja opiszę co zrobiłem i co się stało w efekcie:
Zrobiłem te kroki, które są powyżej na www jest ich więcej. Tych co się nie dało zrobić nie było to nie robiłem.Napisane jest w artykule tak :
Dodawanie użytkownika
Z całą pewnością pierwszą czynnością jaką należy wykonać jest
stworzenie nowego użytkownika. Aby to zrobić wystarczy uruchomić
polecenie adduser i odpowiadać na kolejne pytania.
Najistotniejszym jest nazwa użytkownika oraz pytanie o dodatkowe
grupy. To drugie jest zadawane zaraz po pytaniu o grupę podstawową
i należy na nie odpowiedzieć root - będzie to bardzo
przydatne przy ograniczaniu dostępu do różnych poleceń
(nie dodawaj użytkownika do grupy wheel, bo
dalsze modyfikacje plików konfiguracyjnych uniemożliwią Ci zalogowanie
się do komputera). Na pozostałe pytania wystarczy odpowiedzieć
wciskając enter.
Ustawienia logowania
W drugim kroku należy wyedytować plik /etc/login.access,
aby miał następującą zawartość:
-:wheel:ALL
-:ALL EXCEPT mina86:ALL
Pierwsza linijka spowoduje, że użytkownicy z grupy wheel
nie będą mogli się logować do komputera (do grupy tej należy między
innymi root). Druga linijka zabrania logować się wszystkim
oprócz użytkownika o podanym loginie. Jeżeli więcej osób ma mieć
możliwość logowania się (nie dotyczy to dostępu zdalnego
np. przez SSH) to można stworzyć grupę
(np. ttylogin), a w omawianym pliku drugą
z podanych linijek zamienić na:
-:ALL EXCEPT ttylogin:ALL
W ten sposób, aby zalogować się jako root trzeba najpierw zalogować
się jako zwykły użytkownik, a następnie użyć polecenia su,
o którym niżej.
Dalej, w pliku /etc/login.defs dokonujemy następujących
zmian:
MAIL_CHECK_ENAB
Ustawiamy na no, chyba że rzeczywiście jest to
potrzebne. Jeżeli masz wątpliwości to pewnie nie jest to
potrzebne.
ISSUE_FILE
Ustawiamy na /etc/issue. Później jeszcze dodamy
w odpowiednie miejsce kod definiujący ten plik.
SU_WHEEL_ONLY
Ustawiamy na yes. W ten sposób z su będą
mogli korzystać jedynie użytkownicy należący do grupy o numerze
zero, tj. do grupy root. Należy zauważyć,
że w niektórych systemach opcja ta ma nieco inne znaczenie,
a mianowicie, zgodnie z nazwą, zezwala na logowanie jedynie
użytkownikom z grupy wheel co trochę utrudnia sprawę,
gdyż nie da się wówczas w łatwy sposób zablokować możliwości
logowania dla użytkowników z tej grupy (tak jak to zrobiliśmy
edytując plik
login.access). Nie ma się jednak co przejmować - na
takich systemach nie należy po prostu zamieniać tej wartości -
zabezpieczeniem su jeszcze się zajmiemy.
LOGIN_STRING
Komentarz mówi, że ta opcja nie działa poprawnie, ale nie
spotkałem się z żadnymi problemami toteż wystarczy odkomentować
linię by opcja LOGIN_STRING przyjęła wartość "%s's
Password: ".
GETPASS_ASTERISKS
Bardzo zabawna opcja, osobiście ustawiam ją na 10
dzięki czemu, w trakcie wpisywania hasła, wpisanie pojedynczej
literki powoduje wyświetlenie od jednej do 10 gwiazdek - dobry
sposób na zmylenie kogoś, kto spogląda zza ramienia na to co
wpisujemy. ¦miesznie też wyglądają ludzie, którzy myślą, że
w istocie mam kilkudziesięcio znakowe hasło i wpisałem je w dwie,
trzy sekundy.
Zabezpieczanie SSH
Po drugie trzeba jeszcze wyedytować
plik /etc/ssh/sshd_config ustawiając w nim następujące
opcje:
PermitRootLogin no
AllowUsers mina86
DenyUsers root
DenyGroups wheel
Spowoduje to, że jedynie użytkownik mina86 będzie mógł
logować się zdalnie przy pomocy ssh. Jeżeli więcej
użytkowników ma mieć dostęp zdalny to wystarczy dopisać loginy do
opcji AllowUsers oddzielając poszczególne nazwy spacjami.
Jeżeli użytkowników miałoby być sporo to lepiej stworzyć nową
grupę, np. sshlogin, do
pliku sshd_config dodać opcję AllowGroups sshlogin
i dodawać użytkowników do tej grupy.
Zabezpieczanie su
Teraz jeszcze pozostaje zabezpieczyć trochę polecenie su.
Po pierwsze, do pliku /etc/suauth (w razie potrzeby należy
ten plik utworzyć) dodajemy następującą linijkę:
ALL:ALL EXCEPT GROUP rootENY
Dzięki której, jedynie użytkownicy należący do grupy root
będą mogli korzystać z su. W chwili obecnej, do grupy tej
powinien należeć root oraz użytkownik stworzony na początku tego
artykułu.
Na wszelki wypadek warto jeszcze wykonać następujące dwa
polecenia:
chown root:root /bin/su
chmod 4750 /bin/su
Dzięki którym, blokowanie użytkowników nienależących do grupy
root będzie się odbywało również na poziomie systemu plików
i jądra.
Istotne jest, aby po uruchomieniu find sprawdzić
dokładnie, czy dany użytkownik lub grupa nie jest jednak w systemie
potrzebny/a. W moim przypadku okazało się, że użytkownik
games i uucp oraz grupa uucp były
wykorzystywane (tj. istniały pliki należące do tych
użytkowników/grup) i z tego powodu tych użytkowników/grup nie usunąłem
(co widać brakiem odpowiedniej pozycji w pętli for).
host.conf
Do pliku /etc/host.conf dodajemy:
nospoof on
spoofalert on
spoof warn
Prawa dostępu
chmod -R go-rwx /etc/cron.*
chmod -R go-rwx /etc/rc.d
chmod -R o-rwx /var/log
profile
Na początek pliku /etc/profile dodajemy:
# Check required variables
: ${USER:?Who are you?}
: ${LOGNAME:?Who are you?}
: ${HOME:?The homeless need help}
Partycje
Jeżeli mamy jakieś partycje vfat to warto zmienić w pliku
/etc/fstab opcje z jakimi są montowane na
następujące: umask=7,shortname=winnt,codepage=852,quiet,iocharset=iso8859-2
Spowoduje to, że root oraz użytkownicy z grupy
root będą mogli bez przeszkód odczytywać i modyfikować pliki
na partycjach vfat. Jeżeli chcemy, żeby dodatkowo wszyscy
mogli odczytywać pliki z partycji Windowsa wystarczy zmienić
umask=7 na umask=2. Zmiana na umask=0
spowoduje, że wszyscy będą mogli robić wszystko. By mieć większą
kontrolę, można stworzyć grupę (np.)
vfat, umask ustawić na 7 i jeszcze
dodać opcję gid=numer, gdzie numer to
identyfikator stworzonej grupy. Spowoduje to, że tylko root
oraz członkowie grupy vfat będą mogli szperać po i dokonywać
zmian na partycjach vfat.
Efekt pracy po zalogowaniu się na konsole:
Kod: Zaznacz cały
bash: /bin/uname: Brak dostępu
bash: /bin/uname: Brak dostępu
bash: [: !=: unary operator expected
bash: [: too many arguments
bash: [: too many arguments
bash: [: =: unary operator expected
bash: [: too many arguments
bash: [: too many arguments
bash: [: too many arguments
bash: [: too many arguments
bash: [: too many arguments
bash: [: too many arguments
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: =: unary operator expected
bash: [: too many arguments
bash: [: =: unary operator expected
bryn1u@1337:~$ su
Hasło:
su: Uwierzytelnienie nie powiodło się