Sudoers dosyası, kullanıcı için NOPASSWD'yi etkinleştir, tüm komutlar

104

Önsöz

Bu, Sudoers dosyası ve genel olarak sudo komutuyla ilgili oldukça karmaşık bir sorudur.

NOT: Bu değişiklikleri Ubuntu Desktop 13.04 çalıştıran özel bir makinede yaptım, sadece öğrenme amaçlı kullanıyorum. NOPASSWD sudo'yu etkinleştirmek için büyük bir güvenlik riski olduğunu anlıyorum.

Soru

Başlangıçta, sudoers dosyasındaki (/ etc / sudoers) tek değişiklikim, bir şifre girmek zorunda kalmadan sudo ile tüm komutları çalıştırmak için 'nicholsonjf' özelliğini etkinleştirmesi gereken bir kullanıcı belirtimiydi. 'nicholsonjf' ile):

# 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:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

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

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

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

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

#includedir /etc/sudoers.d

Ancak, bu işe yaramadı ve 'nicholsonjf' komutunu her çalıştırdığımda hala parolamı istemiştim. Sudo ve admin gruplarından 'nicholsonjf' yi kaldırdığımda sadece 'nicholsonjf' olarak sudo komutlarını çalıştırmaya başladım.

Herkes bunun neden çalıştığını açıklayabilir mi?

Çünkü, 'nicholsonjf' kullanıcısı 'yönetici' ve 'sudo' (sudoers dosyasında aşağıda görüldüğü gibi) 'nin iki grup özelliğinden sudo haklarını devralmasıydı, çünkü' nicholsonjf 'kullanıcı belirtimini geçersiz kıldılar çünkü daha fazla yapılandırma dosyasında aşağı doğru?

    
sordu James Nicholson 19.08.2013 02:45

3 cevap

101

Eklenen satırınız geçersiz kılındı. % Co_de% 'den:

  

Birden çok giriş bir kullanıcı için eşleştiğinde, sırayla uygulanır.   Birden fazla eşleşme olduğunda, son eşleşme kullanılır (   Mutlaka en özel eşleşme).

Durumunuzda man sudoers , bu satırın uygulandığı için nicholsonjf grubunun bir üyesiydi:

%sudo   ALL=(ALL:ALL) ALL

sudo girdilerindeki girişleri geçersiz kılmak istiyorsanız, yeni girişleri onlardan sonra ekleyin.

Yeni giriş şöyle görünmelidir

Tek bir kullanıcı için /etc/sudoers veya

Bir grup için

myuser ALL=(ALL) NOPASSWD:ALL .

    
verilen cevap pabouk 03.09.2013 02:55
109

Tek bir kullanıcı için:

superuser ALL=(ALL) NOPASSWD:ALL

Bir grup için:

%supergroup  ALL=(ALL) NOPASSWD:ALL
    
verilen cevap Fedir RYKHTIK 16.01.2015 16:28
-1

Vince ’de bir yorumda bahsedilen , bu satırı kullanabilirsiniz:

%sudo ALL=NOPASSWD: ALL

(Bu, bu cevaplar ve sorun benim için çözüldü.)

    
verilen cevap E. Fortes 04.10.2017 11:53

Etiketlerdeki diğer soruları oku