Jak mogę wszystko założyć, że działam jako administrator?

10

Czy istnieje sposób, w jaki mogę założyć, że kiedy je uruchamiam, uruchamiam je jako administrator uprzywilejowany (root AKA)? Wiem, że to może być niebezpieczne, ale to ryzyko, które chętnie podejmę w imię wygody.

Jon
źródło
Nie rób tego. Spowoduje to uszkodzenie systemu (oprócz narażania komputera na ataki). Przeczytaj unix.stackexchange.com/questions/1052/…
MarkovCh1
Ale jeśli nadal chcesz uruchamiać określone aplikacje jako root, zobacz wiki.archlinux.org/index.php/Sudo
MarkovCh1
1
Jon, wycofałem twoją edycję. Nawet jeśli nie zamierzasz tego robić, pytanie / odpowiedź nadal jest przydatne dla każdego, kto to rozważa. Aby ta strona była użyteczna, pytanie powinno pozostać, lub nowi użytkownicy zobaczą „pytanie wycofane”, a następnie odpowiedź na pytanie, którego nie widzą :)
Cesium
2
Nie należy też głosować z tego samego powodu
Mark Rooney
2
Tak, to doskonałe pytanie. Jedyną głupią rzeczą jest nie korzystanie z rad w komentarzach i odpowiedziach. +1
Tom Brossman

Odpowiedzi:

21

Zwykle dołączam instrukcje do odpowiedzi, ale to taki zły pomysł, wskazuję ci kilka miejsc do przeczytania, jak to zrobić. Możesz wziąć to stąd. Pamiętaj, że gdy zepsujesz system, możesz ponownie wysłać tutaj post, aby uzyskać pomoc, ale ludzie będą się śmiać, potrząsać głowami i odnosić się do błędów pebkac itp.

Najpierw strona pomocy Ubuntu na Root / sudo. Zwróć uwagę na trzy duże, widoczne ostrzeżenia.

Oto użytkownik forum Ubuntu, który zrobił coś takiego i nie mógł naprawić swojego systemu.

Jeśli to zrobisz, przechowuj kopie zapasowe swoich danych i rozważ wygodę bezpiecznego handlu. Być może włóż stary album Dead Kennedys podczas ponownej instalacji ...

Tom Brossman
źródło
3

Jeśli interesują Cię tylko określone rzeczy działające jako root, bit setuid jest odpowiednią funkcją.

Po ustawieniu tego bitu program będzie działał z uprawnieniami właściciela. Dlatego możesz wziąć program, zmienić jego właściciela na root, ustawić jego bit setuid, a następnie ten program będzie działał jako root bez specjalnej interwencji.

Niektóre programy w Ubuntu są domyślnie skonfigurowane jako setuid - na przykład ping

> ls -l `which ping`
-rwsr-xr-x 1 root root 35712 2011-05-03 11:43 /bin/ping

Ten program musi działać jako root, ponieważ tylko root może otworzyć port poniżej 1024 do nasłuchiwania, co jest wymagane do nasłuchiwania pakietów zwrotnych.

Jak wspomniano, domyślnie zezwalanie na uprawnienia do rootowania programów jest niebezpieczne i zwykle jest zarezerwowane dla prostych, dobrze skontrolowanych programów - każdy program, który mógłby zostać wykorzystany w wyniku zewnętrznych danych wejściowych, naraża cały system na ryzyko, zamiast narażać go na szwank tylko te obszary, do których twoje konto użytkownika ma dostęp.

Adrian
źródło
Niepowiązany:: westchnienie: bezpieczeństwo Unix: musi oddać cały system, aby otworzyć port nasłuchujący. Jak to działa? Nikt nie uruchamia np. Apache jako root ...
Billy ONeal 21.01.12
1
Wierzę, że Apache sobie z tym radzi, odradzając procesy potomne z mniej uprzywilejowanymi identyfikatorami UID i uruchamiając tylko jeden proces główny, który otwiera port 80 jako root. Procesy potomne obsługują wszystkie żądania użytkowników. Myślę, że innym powszechnym wzorcem jest to, że procesy uruchomią setuid root, a następnie użyją setuid, aby zmienić się na ograniczonego użytkownika, gdy tylko zdobędą zasoby, których potrzebują root; unixwiz.net/techtips/chroot-practices.html
Adrian
1

Proszę nie rób tego. Nie tylko ranisz siebie, ale także ranisz innych. Jest wystarczająco dużo zombie, robotów spamujących i hostów DDoS.

Jo-Erlend Schinstad
źródło