Przywileje zawsze sudo


17

Szukałem tego i odpowiedź jest prawdopodobnie w milionach miejsc w sieci, ale nie mogę jej znaleźć ...

Jak przyznać swoje uprawnienia root do konta w systemie Linux, aby nie trzeba było wykonywać sudowszystkich poleceń wymagających uprawnień? Jest to nawet bardziej denerwujące niż Kontrola kont użytkowników systemu Windows.

( Proszę ... Nie potrzebuję wykładu na temat tego, jak prowadziłbym niebezpieczne życie. Dziękuję.)

Odpowiedzi:


12

Czy to ci odpowiada?

sudo EDITOR=gedit visudo

Zmień tę linię:

%admin ALL=(ALL) ALL

do tej linii:

%admin ALL=(ALL) NOPASSWD: ALL

Brak wykładów :)


3
+1, ale problem polega na tym, że wciąż muszę pisać sudo.
— user541686,

@Lambert Ok, cóż, nie chcę tego robić, aby to przetestować, ale myślę, że możesz po prostu podać rootowi hasło „sudo passwd root”. Wyloguj się jako użytkownik; zaloguj się jako root. Czy GDM pozwala teraz zalogować się na konto root?

2
Cóż, już to zrobiłem, aby ustawić hasło roota i zalogować się jako root, i oczywiście nie muszę sudojuż tego robić . Problem polega na tym, aby dowiedzieć się, jak zrobić to samo dla innego konta.
— user541686,

7

Ty nie. Dwie rzeczy, które możesz zrobić, to:

1) Uruchom sudo -s, aby pozostać rootem, gdy planujesz wprowadzać wiele poleceń i nie chcesz, aby były one poprzedzane sudo.

2) Możesz skonfigurować plik sudoers, aby umożliwić uruchamianie sudo bez konieczności podawania hasła.


2
Cóż, nie rozumiem, że jeśli mogę tak łatwo zalogować się jako „root” i nigdy nie muszę nawet myśleć o słowie „sudo”, to dlaczego nie mogę zrobić tego samego na innym koncie?
— user541686,

@Lambert: Ponieważ te inne konta nie są UID 0.
— JanC

1
Huh ... więc nawet dodanie się do grupy sudoczy coś takiego nie wystarczy? :(
— user541686,

2

Nie widzę, jak trudno jest uruchomić sudo -iraz w terminalu, a następnie użyć tego jednego terminala (lub można otworzyć więcej niż jeden, ale wtedy trzeba będzie ponownie wpisać hasło ), aby wykonać wszystkie sudo.

(I nie, naprawdę nie widzę dużego problemu z wpisywaniem hasła raz na jakiś czas. To naprawdę nie jest tak czasochłonne, i dopóki nie zamkniesz terminala po każdym poleceniu, sudo nie poprosi o przepustkę masz uwierzytelniony).


3
Nie chodzi o to, że jest czasochłonne, po prostu bardzo irytujące. Jeśli mówię, że chcę zmienić tapetę ekranu logowania, nie potrzebuję komunikatu „Czy jesteś szalony ?! Nie mogę ci ufać”. wiadomość z pytaniem, czy naprawdę jestem przy zdrowych zmysłach, nawet jeśli myślę o wykonaniu takiej akcji o wysokich uprawnieniach, informująca, że ​​jeśli źle wprowadzę hasło, to zdarzenie zostanie zgłoszone . To tak, jakby mój własny komputer mi nie ufał, a kiedy pracujesz przez chwilę, denerwuje mnie Bóg, że głupie działania innych ludzi przy komputerze powodują, że twój komputer zadaje ci pytania.
— user541686,

Nie chciałem wyładowywać na tobie mojego gniewu, ale czasami funkcje „bezpieczeństwa” w oprogramowaniu, które mają chronić niedoświadczonych użytkowników, doprowadzają mnie do szału. Jeśli chcę sprawić, by mój komputer eksplodował, nie potrzeba niczego więcej niż „Jesteś pewien ?!” wiadomość z komunikatem „Nie pytaj więcej”. box ... już więcej, a to po prostu nie pozwala na uzyskanie potwierdzenia. Jeśli muszę podać potwierdzenie wszystkiego, równie dobrze może nie być - nie zmieni to mojej determinacji, ale przynajmniej zrobię te same rzeczy pięć razy szybciej bez podrażnienia.
— user541686,

Projekt bezpieczeństwa Ubuntu jest przeznaczony dla środowiska domowego z wieloma użytkownikami. Zmiany w całym systemie powinny być wykonywane tylko przez zaufaną osobę, a nie tylko osobę, która ma konto użytkownika lub pożycza konto.
— Jeremy Bicha

@JeremyBicha Nie dodali niczego poza oryginalnym projektem bezpieczeństwa / autoryzacji unixa, który Imo został stworzony do współdzielenia czasu dla wielu użytkowników na komputerach mainframe ... Czy to odpowiednie dla domu to kolejne pytanie, ale utknęliśmy z tym.
— masterxilo,

1

Możesz zainstalować / aktywować komendę „su” i skonfigurować powłokę do uruchamiania jej podczas uruchamiania.


Czy jest jakiś „bezpośredni” sposób? Takich jak używanie sudoerslub dodawanie się do jakiejś specjalnej grupy?
— user541686 11.01.11

sudo -s robi to samo.
— psusi

@psusi: Ale czy nie chodzi o pytanie, czy nie trzeba tego robić za każdym razem, gdy uruchamiam komputer?
— user541686 11.01.11

Czy jest jakiś sposób, aby nie pytać o hasło za każdym razem?
— user541686,

0

Poprawna odpowiedź na moje pytanie:

Możesz zmienić identyfikator użytkownika (UID) i identyfikator grupy (GID) na zero /etc/passwd, aby uzyskać uprawnienia roota.

Jednak:

Jeśli to zrobisz, będziesz nie być w stanie zalogować się ponownie !

Możesz jednak utworzyć nowego użytkownika i zmienić jego identyfikator grupy / użytkownika na 0. Zasadniczo ten użytkownik będzie innym root, ale z innym folderem profilu itp.

Następnie możesz użyć tego profilu, jakbyś był rootsobą! :RE

Inne rozwiązanie":

(jeśli lubisz puste hasła)

  1. Uruchom poniższe polecenia i porównaj wyniki

    sudo cat /etc/shadow
    sudo sed "s/\(^$(whoami):\)[^:]*/\1/" /etc/shadow
    

    Powinieneś zobaczyć, że ten ostatni usunął bełkot przed twoją nazwą użytkownika (którą czyta się przy użyciu $(whoami)). (Jeśli nie, nie kontynuuj!)

  2. Kiedy będziesz gotowy, uruchom polecenie, aby zastąpić /etc/shadow(na własne ryzyko!)

    sudo sed -i.bak "s/\(^$(whoami):\)[^:]*/\1/" /etc/shadow
    
  3. Twoje konto ma teraz puste hasło i nie powinieneś już otrzymywać monitów o uprawnienia sudo. (Przynajmniej tak mi się stało.)

Uwaga:

Może być również konieczne włączenie logowania bez hasła ; Nie jestem jednak pewien, czy to konieczne.


Czytałem gdzieś, że za pomocą „sudo bash” wystarczy. Próbowałeś tego?
— Ciekawy uczeń

@CuriousApprentice: Chodziło o to, aby uniknąć sudo.
— user541686

0

Radzę zdecydowanie, aby nie dać sobie GID 0. SUDO nie jest po to, by komplikować sprawy. Jedynym powodem, dla którego należy utworzyć inne konto root (katalog główny to / root / lub katalog niestandardowy, tj. / Home / root2 /), jest to, że w systemie są dwa administratorzy, którzy nie chcą udostępniać jednego hasła roota.

W przeciwnym razie użyj sudo. Zakładając, że nie jesteś doświadczonym użytkownikiem systemu Unix, istnieje również ryzyko, że zapomnisz, jakie narzędzia są przeznaczone tylko do rootowania, a co dla zwykłych użytkowników.

ALE, jeśli czujesz, że masz bezpiecznego normalnego użytkownika (osobiście używam MOCNEGO hasła w tej metodzie), pozwalam mojemu użytkownikowi (tj. Tatu.staff / uid = 1xxx, gid 50) uruchomić SUDO bez hasła. Dlatego nigdy nie mieszam tego, co jest tylko dla roota, a co dla użytkownika.

Skorzystaj z powyższych instrukcji, aby utworzyć plik sudoers (i odpowiednie grupy), aby określony użytkownik uruchomił SUDO bez hasła lub zobacz przykładowy plik, który wkleję tutaj:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin
Defaults        !authenticate

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL
YOURUSER    ALL=(ALL) NOPASSWD:ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL
%wheel  ALL=(ALL) NOPASSWD:ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

TWÓJ UŻYTKOWNIK jest twoją nazwą użytkownika, linia ta pozwala konkretnemu użytkownikowi na uruchomienie SUDO bez hasła.

wszyscy użytkownicy w grupie SUDO muszą podać hasło.

wszyscy użytkownicy w kole grupowym mogą uruchamiać sudo bez hasła - przydatne, jeśli chcesz dać dostęp do SUDO bez hasła wielu użytkownikom, co jest nawiasem mówiąc, po prostu BARDZO ZŁA POMYSŁ.

RÓWNIEŻ: - Zapamiętaj% charachter przed nazwami grup. - Można edytować / etc / group bezpośrednio, ale NIE jest to zalecane. Użyj ADDGROUP do edycji, zobacz więcej informacji, wpisując: man addgroup

Muszę raz jeszcze podkreślić, że ZAWSZE edytuj plik sudoers za pomocą komendy VISUDO, NIGDY bezpośrednio w edytorze. To gwarantuje, że zawsze otrzymujesz prawidłowy plik sudoers - błędy w pisaniu lub złe instrukcje itp. Są bardzo złe w tak ważnym pliku, a visudo oszczędza ci wszystkich problemów, których możesz nie być w stanie samodzielnie odzyskać, i postawię pierwszą odpowiedź na pytanie po to jest „zawsze używaj visdo. nie powiedzieli ci tego? och zrobili? Co jest z tobą nie tak?” czy coś podobnego;)

-

Pozdrowienia z Finlandii - jest tu ładna, całkiem ładna zima, tylko -10 Celsjusza, a nie te okropnie niższe niż -25 ° C.

\\ tatu-o


Ponadto, jeśli nie chcesz pisać długich poleceń lub masz tendencję do zapominania - flagi, alizy są dla Ciebie! Sprawdź ~ / .bashrc, czy ustawiony jest plik aliasu, a następnie dodaj aliasy do ~ / .bash_aliases
— tatu stty
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.