Linuxiarze.pl Forum

Dystrybucje Linux => Ubuntu, Kubuntu, Xubuntu, Lubuntu => Wątek zaczęty przez: karmelek123123 w Maj 31, 2018, 08:30:23 PM

Tytuł: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Maj 31, 2018, 08:30:23 PM
Hej, mam do napisania skrypt który:
- tworzy konto uczen z domyślną powłoką systemową sh
- odbiera wszystkie uprawnienia użytkownikowi uczen do katalogu /lib 
No i mam coś takiego:

#/bin/bash
clear
useradd uczen
chsh -s uczen
chmod o-rwx /lib

Skrypt tworzy użytkownika ale potem wyświetla błąd PAM: authentication failure (mniej więcej taki tekst)
Stwierdzam w takim razie że skrypt nie działa prawidłowo.
Co ciekawe po jego wykonaniu nie działa żadna komenda terminala (/bin/bash odmowa dostępu) a dodatkowo nie można ponownie uruchomić terminala (również odmowa dostępu). Przy restarcie linuxa nie można ponownie go uruchomić przez błąd w User ID (czy coś takiego). Nie wiem co dalej robić, pomóżcie z tym skryptem jeśli możecie, z góry dziękuję.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 09:07:05 AM
Odcięcie użytkownika od katalogu /lib (jest to katalog systemowy) może powodować różne problemy  w funkcjonowaniu (tzn. odcina wszystkie uruchamiane programy od tego katalogu). Oprócz tego zastosowane polecenie "chmod o-rwx /lib" odcina WSZYSTKICH użytkowników nie będących root-em i nie należących go grupy "root" od tego katalogu - więc dotyczy także wielu użytkowników "systemowych" - problemy mogą więc także dotyczyć rożnych serwisów systemu operacyjnego (odcięte grupy można przeglądnąć w pliku /etc/group).
Zaryzykowałbym twierdzenie, że system zachowuje się zgodnie z wykonanymi poleceniami :-)
Swoją drogą - ciekawy jestem jaki jest powód przeprowadzania "kontrolowanej destrukcji" systemu operacyjnego przez odcięcie wszystkich użytkowników nienależących do grupy "root"  od systemowego katalogu "/lib"?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 10:43:01 AM
Mhm, dzięki za pomoc.
W takim razie jaką składnię polecenie powinienem zastosować?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 11:06:07 AM
Chyba nie do końca zostałem przez Ciebie zrozumiany.
Wydane polecenie ma prawidłową składnię i zostało prawidłowo wydane. Natomiast jego normalnym efektem jest częściowa dysfunkcjonalność systemu operacyjnego.
Standardowo w debianie uprawnienia wyglądają tak:
drwxr-xr-x 16 root root 4096 maj 28 08:27 /lib
a wydane polecenie doprowadza do takiej sytuacji:
drwxr-x--- 16 root root 4096 maj 28 08:27 /lib
Taki efekt w sposób znaczący zmienia de facto stan systemu operacyjnego.
Stąd powtarzam moje pytanie, na które nie odpowiedziałeś:
Jaki jest powód przeprowadzania "kontrolowanej destrukcji" systemu operacyjnego przez odcięcie wszystkich użytkowników nienależących do grupy "root"  od systemowego katalogu "/lib"?
lub inaczej:
Jaki jest powód ocięcia użytkownika "uczeń"  od systemowego katalogu "/lib"?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 12:45:11 PM
No, odcinam go bo to ma zrobić ten skrypt, ale wiem że odciąłem wszystkich użytkowników zamiast tego jednego. Co powinienem wpisać żeby odciąć tylko tego konkretnego użytkownika? (uczen)
Nie za bardzo mogę to potestować bo boję się że znowu wysypię system :/
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 05:35:24 PM
Odcięcie tego jednego użytkownika spowoduje to, że nie będzie to użytkownik w pełni funkcjonalny.
Poza tym można to zrobić tylko przy drastycznym obniżeniu bezpieczeństwa całego systemu. Efektem końcowym będzie stan, w którym użytkownik uczen jest niefunkcjonalny, a wszyscy pozostali użytkownicy należą do grupy root, co stanowi zniszczenie systemu bezpieczeństwa linuksa.
Jeszcze raz pytam: do czego Ci to potrzebne?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 06:35:37 PM
No tak jest w poleceniu i taki skrypt ma być.
Nie wiem o co ci chodzi. To możesz jakoś pomóć? Ja jak już mówiłem mam związane ręce.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: TataPingu w Czerwiec 01, 2018, 06:47:59 PM
@ karmelek123123
- kolega lesio pyta "do czego Ci to potrzebne", może ja jeszcze inaczej "dopytam", JAKI JEST CEL odcięcia użytkownika uczeń od systemu ?

Powiem szczerze, że sam nie potrafię zrozumieć celu. "No, tak jest w poleceniu..." nie wyjaśnia nam w niczym zadania...
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 06:49:45 PM
No tak mam w arkuszu do zrobienia, nie wiem o co wam w ogóle chodzi po prostu mam utworzyć taki skrypt bo takie jest polecenie i już.
Co wy jeszcze chcecie wiedzieć?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 07:01:06 PM
No i taki musi być tego efekt, jaki właśnie jest :-). Jeśli koniecznie chcesz odciąć użytkownika od katalogu /lib, to musisz wykonać polecenie chmod, które wykonałeś - nie znam innego wyjścia.
W tej sytuacji użytkownik uczeń i wszyscy inni użytkownicy nienależący do grupy root stają się dysfunkcjonalni - to znaczy nie mogą uruchomić żadnego oprogramowania, które znajduje się w katalogu /lib (np. będą zapewne problemy z pracą terminalową z uwagi na biblioteki terminfo znajdujące się w /lib).
W związku z tym wszystkich innych użytkowników występujących w systemie trzeba dodać do grupy root, aby mogli korzystać z katalogu /lib (np. poleceniem usermod). Nazwy użytkowników można pobrać np. z pliku /etc/passwd (są na pierwszej pozycji). Te operacje skutkują drastycznym obniżeniem bezpieczeństwa systemu, ale system odzyska kontakt z katalogiem /lib. Gdy dodasz użytkownika uczen do grupy root, to stanie się także funkcjonalny - będzie miał dostęp do /lib.
Czego nie rozumiesz w moich wypowiedziach? Tak trudno zrozumieć, że realizacja tego, co chcesz realizować, po prostu dezorganizuje i psuje system operacyjny?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: TataPingu w Czerwiec 01, 2018, 07:02:59 PM
W sumie nic, tylko wydaje mi się, że cokolwiek się robi, robi się po to, by osiągnąć jakiś cel/skutek.

W tym przypadku cel/skutek nie jest określony, a jedyne co powoduje, to destrukcję OSa.

Czy jeśli byś dostał zadanie zintegrować którąś z poniższych komend w skrypcie zrobił byś to również (nie znając celu)?

#https://www.tecmint.com/10-most-dangerous-commands-you-should-never-execute-on-linux/#
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: gom1 w Czerwiec 01, 2018, 07:10:53 PM
Przecież to tylko polecenie od nauczyciela. Nie wymagajcie od tych ostatnich specjalistycznej wiedzy.

Aczkolwiek autor wątku mógłby przy okazji oceny swojego rozwiązania wspomnieć o tym, że zadanie jest dość słabe.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 07:14:02 PM
Chłopaki spokojnie, doceniam waszą pomoc, po prostu pomyślałem że takie linuxowe świry jak wy (w dobrym znaczeniu tych słów) rozgryzają takie skrypty o 4 nad ranem bez włączania systemu w pamięci.
Zauważyłem że system sie troche rozsypał więc poszukałem pomocy na forum, mając nadzieje że napiszecie
chmod ( odpowiednie cyferki od praw) i wszystko będzie ładnie działać.
Skoro nie chcecie tego robić to jakoś sam sobie poradzę, przepraszam że zająłem wam czas.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: TataPingu w Czerwiec 01, 2018, 07:18:50 PM
@gom1
"Przecież to tylko polecenie od nauczyciela. Nie wymagajcie od tych ostatnich specjalistycznej wiedzy"
- no, tutaj zgadzam się z tobą w 100%! ;)
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 07:23:35 PM
Przepis, co zrobić by taki zniszczony system działał, został Ci podany - i to dość wyraźnie (dodanie wszystkich użytkowników oprócz "uczeń" do grupy root). Najwyraźniej nie przeczytałeś uważnie odpowiedzi.
Dlatego uważam, że Twoja wypowiedź "Skoro nie chcecie tego robić " jest nie na miejscu. Natomiast w tej sytuacji mogę się czuć uprawniony do stwierdzenia "skoro nie chce Ci się czytać odpowiedzi, to po co zadajesz pytanie?"
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 07:26:28 PM
Ale mnie rybka ten system, postawię sobie nowy na wirtualu.
Po prostu chcialem poprawne wartości w chmod żeby uczen nie mogl korzystac w ogole z katalogu /lib a reszta uzytkownikow mogla sobie normalnie.
To podacie te wartości? Jeśli was męczę to napiszcie :D Dam wam spokój
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 07:34:02 PM
Dobra dałem sobie radę, zrobiłem po swojemu i działa.
Dzięki za takie dokładnie wyjaśnienia wszystkiego (nie o to mi chodziło w sumie) ale i tak dzięki.
Przepraszam jeśli sie trochę wkurzyliście :D. Trzymajcie się, cześć
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 07:42:00 PM
Czy możesz poinformować, co zrobiłeś?
Rozwiązywanie problemów na forum ma ten cel, żeby każdy mógł prześledzić problem i wyciągnąć wnioski na przyszłość. Czasami przyczyna problemu jest całkiem inna od większości diagnoz, czasem problem wynika z błędnej "literówki", czasem problemem jest zrozumienie problemu :-) Stąd moje pytanie.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 08:02:36 PM
Tak, nowy skrypt:
#/bin/bash
clear
useradd uczen
chsh -s uczen
chown uczen /lib
chmod 077 /lib

Tylko tyle, i aż tyle.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: gom1 w Czerwiec 01, 2018, 08:20:39 PM
A nie powinno być:
chsh -s sh
?
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 08:35:54 PM
Nie wiem cholera, potestowałem i odpalanie tego skryptu uniemożliwia potem zalogowanie sie na roota :D
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 08:48:58 PM
No tak, rozumiem, cel osiągnięty, chociaż z trzema spostrzeżeniami:

1) bezpieczeństwo systemu operacyjnego zniszczone w 100%, bo KAŻDY może zmienić atrybuty katalogu systemu operacyjnego /lib, a root nie jest jego właścicielem - więc system nie nadaje się do eksploatacji (czyli rozwiązanie tak samo beznadziejne, jak z dodawaniem użytkowników do grupy root). Ale temu można częściowo zaradzić zmieniając polecenie "chmod 077 /lib" na "chmod 055 /lib". W tym momencie problem słabnie, bo "other" (inni użytkownicy) nie mogą zmianiać atrybutów katalogu /lib
2) rozwiązanie nie jest też skuteczne - użytkownik "uczen" w każdej chwili może nadać sam sobie pełne uprawnienia do katalogu /lib, bo jest jego właścicielem :-) (w tym punkcie rozwiązanie gorsze, niż z dodawaniem użytkowników do grupy "root" , bo nieskuteczne - w zasadzie nie odcina użytkownika "uczen" od katalogu "lib". W związku z tym użytkownik "uczen" może przejąć w pewnej mierze zarządzanie katalogiem systemowym /lib, w związku z czym punkt pierwszy znowu staje się aktualny :-)
3) superużytkownik root traci dostęp do swojego własnego katalogu systemowego - poważny zgrzyt systemowy - mogą pojawić się dysfunkcjonalności (w tym punkcie rozwiązanie zdecydowanie gorsze, niż z dodawaniem użytkowników do grupy "root")
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: TataPingu w Czerwiec 01, 2018, 08:59:42 PM
A ja nadal nie rozumiem celu tych "zabiegów"...
- mam wrażenie, że "nauczyciel" robiąc zajęcia praktycznie przyszłym mechanikom samochodowym, by dotrzeć do komory silnikowej każe um odrywać silnikową klapę, a, by wymienić żarówkę w prędkościomierzu muszą wyrwać całą deskę roździelczą....

No cóż, można i tak....
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 01, 2018, 09:15:27 PM
Dobra, ostatecznie poprawiłem skrypt tak żeby nie wypieprzał systemu.
Brzmi tak:

#/bin/bash
useradd -D -s /bin/shell
adduser uczen
chmod 770 /lib

Po jego wykonaniu nie zalogujemy się na ucznia (wiadomo dlaczego) ale cel jest osiągnięty, użytkownik istnieje.
Odwołać to można poleceniem chmod +777 (i teraz normalnie sie logujemy na ucznia czy na co tam jeszcze chcemy).
Dodam jeszcze że to nie jest widzimisię mojego profesora tylko polecenie z tegorocznego arkusza egzaminu E12 na technika informatyka.
Dziękuję wszystkim za pomoc i rady, naprawdę dużo się dowiedziałem o samym linuxie. Pozdrawiam.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: TataPingu w Czerwiec 01, 2018, 10:29:24 PM
Łatwiej byłoby chyba użyć:

adduser uczen --disabled-login (user istnie, tyle, że nieaktywny)

ewentualnie:

adduser uczen --disabled-password (user istnieje, nie może się jednak zameldować - meldowanie można uaktywnić dopiero po użyciu "passwd")

Na pewno powyższe nie naruszają w niczym systemu...
- no ale, "egzaminarorzy", to "egzaminatorzy"...

A cel i tak nie jest mi jasny...
- może się starzeję ;)
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: gom1 w Czerwiec 01, 2018, 10:40:58 PM
Cel akurat jest oczywisty: nauka poleceń; wykazanie, że rozumiesz ich zastosowanie, wiesz jak działają. A to, że są wykorzystywane do mało realnych rzeczy.. szkoła od zawsze uczyła tego, co w życiu zazwyczaj nie jest potrzebne.
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: lesio w Czerwiec 01, 2018, 11:46:06 PM
Problemem jest jedynie to, że operacje dotyczą katalogu systemowego, z którego korzystają wszyscy użytkownicy - zwykli i systemowi. Gdyby to był zwykły katalog - odpowiedź byłaby bezproblemowa. Stąd wynikają wszystkie problemy - to jest ewidentny błąd metodologiczny twórców pytań egzaminacyjnych. Ale cóż, na egzaminie rację ma egzaminator ...
Z ciekawości zapoznałem się z grubsza z testem E12 i mam bardzo mieszane uczucia. Mieszanina pytań sensownych i "bardzo przypadkowych".
Życzę Ci, Karmelek123123, sukcesu na egzaminie!!!
Tytuł: Odp: Skrypt nie działa, a potem psuje maszynę wirtualną.
Wiadomość wysłana przez: karmelek123123 w Czerwiec 02, 2018, 11:02:53 AM
A dziękuję, doceniam  ;)