Sudo şifresini hatırlama zaman aşımını nasıl arttırabilirim?


61

Zaten / etc / sudoers dosyasını ayarlamam gerektiğini biliyordum ancak tüm bilgileri ve aynı zamanda vieditör kullanmamı gerektirmeyen bir çözüm bulmak istiyorum .

Güncelleme: asla, hiçbir zaman dosyayı başka bir şeyle düzenlemeyi denemeyin visudo.


1
EDITOR env değişkenini ayrıca visudo :: sudo env kullanarak da ayarlayabilirsiniz EDITOR = nano visudo
İyi Kişi

Yanıtlar:


86

Çalıştır sudo visudove bu satırı ekle:

Defaults    timestamp_timeout=-1

Bakın man 5 sudoers. -1parolanın asla zaman aşımına uğramamasına neden olur. Numarayı dakikalar içinde istediğiniz gibi değiştirebilirsiniz.

Man sayfası "sudo zaman aşımını 5 dakika daha uzatır" sudodiyor sudo -v.

Dosyayı düzenlemek yerine 'sudo visudo' komutunu çalıştırmak, sistemin değişiklikleri göndermeden önce sudoers dosyasını doğrulamasına neden olur. Örneğin, bir yerde başıboş bir karakter bırakırsanız, kaydettiğinizde ve çıktığınızda "sudoers dosyasında bir hata var, ne yapmak istersiniz?" ... bu yüzden size geri dönüp düzenleme yapma şansı veriyor. Bu aslında sadece 10 dakika önce başıma geldi.


20
Evet, ancak visudosudoers dosyasındaki bazı temel kontrolleri kaydetmeden önce çalıştırır. Dosyayı vidoğrudan kullanarak karıştırırsanız, sudo kullanmaktan kendinizi kilitleyebilirsiniz; bu da değişikliği geri almayı çok zorlaştırır.
nohillside

4
Ayrıcalıklar diğer sistemlerde de aynıdır, yani Apple ile ilgisi yok. visudosistem varsayılan düzenleyicisinin etrafına kaydırılır (kök varsayılanı geçersiz kılsaydı varsayılan kök kullanıcı varsayılanını tahmin ederim), yani vi bar adıyla hiçbir ilgisi yoktur. Sistemimde (elma btw değil) nano alıyorum. Deneyin export EDITOR='/bin/nano'veya istediğiniz editörden sonra visudo kullanın.
Chris

4
Um ... Düzeltmek için root kullanamazsınız, çünkü root alamazsınız, çünkü sadece sudo dosyanızı doldurdunuz ... Bu tam mesele.
daviewales

1
Profesyonel bir rolde, sudo erişimine sahip olabilir, ancak kök şifreniz olmayabilir. Sunucunuz, ülke genelinde tek bir kullanıcı moduna erişmeyi zorlaştıran bir veri merkezinde olabilir. Ancak, eğer profesyonel olsaydınız, muhtemelen size böyle bir uyarı verilmeyecekti. Mesele şu ki, profesyonellerden öğrenmelisin. İyi alışkanlıklar oluşturmaktan kaçınmanın yollarını aramayın. Öyleyse, çılgınca çığlıklarını Stack Exchange ve IRC'de duymalıyız.
Bruno Bronosky

1
(Belki herkes için açıktır, ancak ekler): timestamp_timeout dakikalar içinde, kesirli bir bileşen içerebilir.
kullanıcı

3

Doğrudan değişiklik yapma konusunda gerçekten dikkatli olun /etc/sudoers!

Örneğin, yukarıdaki öneriyi doğrudan denedim:

sudo sh -c 'echo "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

dosyamı karıştırdı /etc/sudoers(bir CentOS Virtualbox VM'de). Olması gerekirdi:

sudo sh -c 'echo -e "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

Neyse ki, root hesabına girdim, root olarak giriş yaptım, kullandım visudove sorunu tamir ettim ! Bu nedenle, yukarıdaki yorumların w / visudobunun yerine kullanılmasına katılıyorum .


1

Terminallerin tüm bilgileri terminalden komutla bulunabilir.

man sudoers

Hatta dosyaları düzenlemek için kullanıcı basit metin bile yapabilirsiniz, ancak özel bunu zorlaştırır. sudoers-r--r----- (Octal 0440)

Bu, Apple'ın dosya ile uğraşmanızı gerçekten istemediğini gösterir. Bu gerçekten işletim sisteminin temel güvenliğidir.

Düzenleme seçenekleri vi, emacs veya kişisel favorim BBEdit.


5
Bu ayrıcalıkların belirlenmesinin bir nedeni var. visudoDosyayı kendiniz düzenlemek yerine, sizi kullanmaya zorlama girişimi içindedirler. Ayrıca, OS X ile ilgisi yok. Standart * nix. Ayrıca, varsayılan olmayan bir düzenleyici kullanmak istiyorsanız, $EDITORaramadan önce ortam değişkenini ayarlamanız yeterlidir visudo. örn EDITOR=nano sudo visudo.
daviewales

1

Bu komutla sudo zaman aşımını devre dışı bırak:

sudo sh -c 'echo "\nDefaults timestamp_timeout=-1">>/etc/sudoers'

Sudo zaman aşımını bu yöntemle yeniden etkinleştirmek için:

sudo sed -i "/Defaults timestamp_timeout=-1/d" /etc/sudoers

8
Sudoers man sayfasından: sudoers dosyası daima dosyayı tutan ve gramer kontrolü yapan visudo komutu ile düzenlenmelidir. Sudo, sözdizimsel olarak yanlış bir sudoers dosyasıyla çalışmayacağından, sudoer'lerin sözdizimi hatasız olması zorunludur.
Matteo,

@Matteo Peki, sonuçların farkında olmanız koşuluyla, kendi mülkünüzde istediğiniz her şeyi yapabilirsiniz. Bazı durumlarda bu tamamdır, örneğin üzerinde bir otomasyon betiğinin bir parçası olarak değerli verileri bulunmayan taze mac yapılarında kullanıyorum . Bir uyarı sağlamak için bu cevaba bir düzenleme önerdim. İdeal olarak sudo, bir dosyayı düzenlemek zorunda kalmadan bunu değiştirmek için tek bir yöntem olmalı!
samthebest,

1
Dikkat et, bu tehlikeli bir tavsiye. Bunun yerine visudo kullanın.
Sheppard
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.