Görünüşe göre bu böcek bir süredir ortalıkta! Yararlı bulabileceğiniz bazı hata referansları (ve abone olmak / oy vermek, ipucu, ipucu ...) isteyebilirsiniz:
Debian bug # 85123 ("sudo: SECURE_PATH hala geçersiz kılınamıyor") (2001'den itibaren!)
Görünüşe göre Bug # 20996 sudo'nun bu versiyonunda hala mevcut. Değişiklik, çalışma zamanında geçersiz kılınabileceğini söylüyor, ancak henüz nasıl yapılacağını henüz keşfetmedim.
Sudoers dosyanıza böyle bir şey koymadan bahsediyorlar:
Defaults secure_path="/bin:/usr/bin:/usr/local/bin"
ama en azından Ubuntu 8.10 bunu yaptığımda, bana bu hatayı veriyor:
visudo: unknown defaults entry `secure_path' referenced near line 10
Ubuntu hatası # 50797 ("--with-secure-path ile oluşturulmuş sudo sorunlu")
Daha da kötüsü, anlayabildiğim kadarıyla, sudoers dosyasında secure_path'e saygı duymak imkansız. Örneğin, kullanıcılarınıza / opt altında bir şeye kolay erişim sağlamak istiyorsanız, sudo dosyasını yeniden derlemeniz gerekir.
Evet. Orada ihtiyacı recompile gerek kalmadan bu "özelliğini" geçersiz kılmak için bir yol olarak. Çevreniz için neyin en iyi olduğunu söyleyen ve sonra onu kapatmanın bir yolunu vermeyen güvenlik bağnazlarından daha kötü bir şey yoktur.
Bu gerçekten sinir bozucu. Güvenlik nedeniyle geçerli davranışı varsayılan olarak tutmak akıllıca olabilir, ancak kaynak kodundan yeniden derlemekten başka bunu geçersiz kılmanın bir yolu olmalı! Birçok insan PATH mirasına ihtiyaç duymaktadır. Acaba neden hiçbir bakıcıya bakmıyor, bu da kabul edilebilir bir çözüm bulmak kolay görünüyor.
Bu şekilde çalıştım:
mv /usr/bin/sudo /usr/bin/sudo.orig
ardından aşağıdakileri içeren bir dosya / usr / bin / sudo oluşturun:
#!/bin/bash
/usr/bin/sudo.orig env PATH=$PATH "$@"
normal sudo'nuz aynı güvenli olmayan sudo gibi çalışır
Ubuntu hatası # 192651 ("sudo yolu her zaman sıfırlanır")
Bu hatanın bir kopyasının orijinal olarak Temmuz 2006'da yapıldığı göz önüne alındığında, etkisiz bir env_keep'in ne kadar süredir faaliyette olduğu net değil. Kullanıcıları yukarıda listelenen numaralar kullanmaya zorlamanın yararları ne olursa olsun, sudo ve sudo kullanıcılarına yönelik man sayfaları kesinlikle PATH'yi değiştirme seçeneklerinin etkin bir şekilde gereksiz olduğu gerçeğini yansıtmalıdır.
Belgeleri gerçek yürütmeyi yansıtacak şekilde değiştirmek dengesiz ve çok yardımcıdır.
Ubuntu hatası # 226595 ("PATH'i korumak / belirlemek mümkün değil")
Ben sudo PATH ek std olmayan ikili klasörler ile çalıştırmak gerekir. Zaten / etc / ortamına benim gereksinimleri eklediğimde sudo altında çalıştırırken eksik komutlar hakkında hatalar var şaşırdım .....
Bunu başarılı olmadan düzeltmek için aşağıdakileri denedim:
" sudo -E
" Seçeneğini kullanmak - işe yaramadı. Mevcut PATH'm hala sudo tarafından sıfırlandı
/ Etc / sudoers içinde " Defaults env_reset
" to " Defaults !env_reset
" değiştirmek - ayrıca işe yaramadı (sudo -E ile birleştirildiğinde bile)
/ Etc / sudoers içindeki uncommenting env_reset
(örn. " #Defaults env_reset
") Da çalışmadı.
Defaults env_keep += "PATH"
/ Etc / sudoers klasörüne ' ' eklemek de işe yaramadı.
Açıkçası - adam belgelerine rağmen - sudo PATH ile ilgili olarak tamamen kodlanmıştır ve kullanıcıların PATH'ını tutma konusunda herhangi bir esnekliğe izin vermez. Sudo kullanarak kök izinleri altında varsayılan olmayan yazılım çalıştıramaz gibi çok sinir bozucu.