sudo balık kabuğundaki şifremi sormaya devam ediyor


19

Ubuntu'daki sudo her komut için şifremi sormaya devam ediyor. Önceden, şifreyi yalnızca bir kez girmek zorunda kaldım ve daha sonra bir süre hatırlanacaktı. Bu son zamanlarda, muhtemelen Natty için "yükseltme" sonra değişti.

Yaptım sudo visudove ayarladım Defaults env_reset, timestamp_timeout = 60, yeniden başlatmayı denedim, ama hala çalışmıyor. Bunu nasıl düzeltirim?

Aşağıdaki önerilerden sonra, şöyle /etc/sudoersgörünüyor:

#
# 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:endolith timestamp_timeout=60

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) 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

#includedir /etc/sudoers.d

Güncelleme:

VirtualBox'ımı yükselttim ve aynı sorundan muzdarip olmaya başladı. Bir tahminle, bash koştum ve sudo yapmaya çalıştım ve şifre doğru hatırlanıyor. Sadece varsayılan kabuklu balığımı kullandığımda hatırlamıyorum. Önceki Ubuntu sürümünde yaptı, ama artık değil.

Güncelleme:

13.05'e yükselttim ve bu sihirli bir şekilde tekrar çalışmaya başladı. Şimdi şifremi bir kez soruyor, bir süre sormayı bırakıyor ve bir süre sonra tekrar soruyor.



3
@warren: Bu bir kopya değil. Parolayı girmem gerekiyor, ancak bir kez girdikten sonra, belirli bir süre için girmek zorunda değilim. Geçmişte visudo ile bu süreyi değiştirdim ama artık çalışmıyor.
endolith

Ortak bir ayrılmış bir yerine birden çok Defaults deyimi kullanmanız gerektiğini düşünüyorum.
Stephanie

@Stephanie, virgülle ayrılmış değerler içeren tek bir Defaults deyiminin olması iyi çalışıyor.
Zoredache

Gördüğünüz gibi bir satır eklediniz Defaults:endolith timestamp_timeout=60, ancak burada başka bir yoruma göre endolit adlı herhangi bir grupta değilsiniz. peki hangi kullanıcı adını kullanıyorsun? İle kontrol edin whoamive yerine bu kullanıcı adını eklemek endolithiçinde Defaults:endolith timestamp_timeout=60veyaendolith ALL=(ALL) NOPASSWD: ALL
wim

Yanıtlar:


15

@endolith: Evet, sadece balıkları etkiliyor gibi görünüyor. Aynı sorunu vardı, sorun sudo seçeneği "tty_tickets" neden olur. Bunu / etc / sudoers dosyanızda devre dışı bırakmak sorunu çözecektir.

Aşağıdakiler tty_tickets'i devre dışı bırakacaktır:

Defaults        env_reset,!tty_tickets

Bunun olumsuz sonuçları var mı?
endolit

1
"Uzak kullanıcılara SSH erişimi öneriyorsanız dikkatli olun, çünkü istemeden tty_tickets'i devre dışı bırakırsanız yükseltilmiş ayrıcalıkları sizinle paylaşmalarına izin verebilirsiniz." dan ask.debian.net/questions/...
Endolit

Uzaktaki bir kullanıcıya SSH erişimi öneriyorum, ancak bu sadece kendime ait, bu yüzden herhangi bir güvenlik açığına neden olmadığını varsayıyorum?
endolit

5

Başka hiçbir şey işe yaramıyorsa sudo -i(kendi başına) deneyin . Bu size bir paroladan sonra bir kök kabuk verecektir.


6
büyük bir nokta ama istek biraz daha riskli.
mbb

Bunun bir kök kabuğu almak için "Ubuntu yolu" olduğunu düşünürsek, sorunun etrafında düzgün bir çalışma olduğunu düşündüm. Her komut hala günlüğe kaydedilir.
Broam

1
Sorunu gerçekten çözmez, temelde onu görmezden gelmenin bir yoludur.
Zoredache

Bu, bir çözümden ziyade bir çözümdür, ancak iyidir ve size otomatik olarak ödülün yarısını verip vermediğini umursamıyorum. :)
endolith

1

Parolayı yalnızca bir kez girmek zorunda kaldım ve daha sonra bir süre hatırlanacaktı.

Tahmin edersem, /var/run/sudodizininizle ilgili bir şeyin berbat olduğundan emin olurum . Bu dizin zaman damgası dosyalarının depolandığı yerdir. Belki / var / run dolu, belki izinler azaldı. Her neyse, şu dizine bakın, probleminizin orada olduğundan şüpheleniyorum.

Klasörümdeki izinler şöyle görünür.

# find /var/run/sudo/ -ls
1164242    4 drwx------   6 root     root         4096 Jan  1  1985 /var/run/sudo/
1179694    4 drwx------   2 root     www-data     4096 Jan  1  1985 /var/run/sudo/www-data
1164286    4 drwx------   2 root     myuser      4096 Jul 21 23:03 /var/run/sudo/myuser
1163399    0 -rw-------   1 root     myuser         0 Jul 13 22:42 /var/run/sudo/myuser/0
1163453    0 -rw-------   1 root     myuser         0 Jul 21 22:59 /var/run/sudo/myuser/2
1164309    0 -rw-------   1 root     myuser         0 Jul 21 23:03 /var/run/sudo/myuser/6
1163303    0 -rw-------   1 root     myuser         0 Jul 13 22:31 /var/run/sudo/myuser/5

İyi bir ölçü sudo -Kiçin, geçerli zaman damgası dosyalarınızı öldürmek için de çalışmayı deneyebilirsiniz .


find: '/var/run/sudo': No such file or directory
endolith

Bu kötü bir işaret, neden oluşturmayı denemiyorsunuz ve yukarıdaki gibi sahiplik / izinleri ayarlamıyorsunuz.
Zoredache

Veya paketi yeniden yükleyebilirsiniz.
Zoredache

sinaptik ile sudo yeniden yüklendi ve hala söylüyor
endolith

Aynı şeyi Ubuntu 10.10 çalıştıran bir VirtualBox'ta alıyorum. sudoiçinde klasör yok /var/run. Bu sanal makinede, şifremi beklendiği gibi hatırlıyor, bu yüzden bu alakalı görünmüyor. Bu sanal makinede visudo'daki tek şey Defaults env_reset. Bunun %sudo ALL=(ALL) ALLyerine diyor %sudo ALL=(ALL:ALL) ALL.
endolith

0

/Etc/sudoers.d/ dizinini kontrol ederim.

Ayrıca sudo paketini önceki sürüme düşürmeyi de deneyebilirsiniz.

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.