Wygląda na to, że ten błąd występuje już od dłuższego czasu! Oto kilka odniesień do błędów, które mogą Ci się przydać (i możesz chcieć zasubskrybować / zagłosować, wskazówkę, wskazówkę ...):
Błąd Debiana # 85123 („sudo: SECURE_PATH nadal nie można zastąpić”) (od 2001 roku!)
Wygląda na to, że Bug # 20996 jest nadal obecny w tej wersji sudo. Dziennik zmian mówi, że można go zmienić w czasie wykonywania, ale jeszcze nie odkryłem, jak to zrobić.
Wspominają o umieszczeniu czegoś takiego w pliku sudoers:
Defaults secure_path="/bin:/usr/bin:/usr/local/bin"
ale gdy robię to przynajmniej w Ubuntu 8.10, pojawia się następujący błąd:
visudo: unknown defaults entry `secure_path' referenced near line 10
Błąd Ubuntu # 50797 („Problem z sudo zbudowanym z --with-secure-path jest problematyczny”)
Co gorsza, o ile mogę stwierdzić, nie można ponownie podać ścieżki bezpiecznej w pliku sudoers. Jeśli na przykład chcesz zaoferować użytkownikom łatwy dostęp do czegoś w / opt, musisz ponownie skompilować sudo.
Tak. Tam musi być jakiś sposób, aby zastąpić tę „funkcję” bez konieczności rekompilacji. Nie ma nic gorszego niż bigoty bezpieczeństwa, które mówią ci, co jest najlepsze dla twojego środowiska, a następnie nie dają ci możliwości ich wyłączenia.
To jest naprawdę denerwujące. Rozsądnie byłoby zachować domyślne zachowanie ze względów bezpieczeństwa, ale powinien istnieć sposób zastąpienia go innym niż rekompilacja z kodu źródłowego! Wiele osób potrzebuje dziedziczenia ŚCIEŻKOWEGO. Zastanawiam się, dlaczego żaden opiekun nie zagląda w to, co wydaje się łatwe do znalezienia dopuszczalnego rozwiązania.
Pracowałem nad tym w ten sposób:
mv /usr/bin/sudo /usr/bin/sudo.orig
następnie utwórz plik / usr / bin / sudo zawierający następujące elementy:
#!/bin/bash
/usr/bin/sudo.orig env PATH=$PATH "$@"
wtedy zwykłe sudo działa podobnie jak sudo niezabezpieczone
Błąd Ubuntu # 192651 („Ścieżka sudo jest zawsze resetowana”)
Biorąc pod uwagę, że duplikat tego błędu został pierwotnie złożony w lipcu 2006 r., Nie jestem pewien, jak długo działała nieefektywna funkcja env_keep. Bez względu na zalety zmuszania użytkowników do korzystania ze sztuczek, takich jak te wymienione powyżej, z pewnością strony podręcznika dla sudo i sudoers powinny odzwierciedlać fakt, że opcje modyfikacji PATH są faktycznie zbędne.
Modyfikacja dokumentacji w celu odzwierciedlenia faktycznego wykonania nie jest destabilizująca i bardzo pomocna.
Błąd Ubuntu # 226595 („niemożliwe do zachowania / określenia ŚCIEŻKA”)
Muszę być w stanie uruchamiać sudo z dodatkowymi folderami binarnymi niestartymi w PATH. Po dodaniu moich wymagań do / etc / environment byłem zaskoczony, gdy otrzymałem błędy dotyczące brakujących poleceń podczas uruchamiania ich w sudo .....
Próbowałem rozwiązać ten problem bez powodzenia:
Korzystanie z sudo -E
opcji „ ” - nie działało. Moja istniejąca ŚCIEŻKA została zresetowana przez sudo
Zmiana „ Defaults env_reset
” na „ Defaults !env_reset
” w / etc / sudoers - również nie działała (nawet w połączeniu z sudo -E)
Odkomentowanie env_reset
(np. „ #Defaults env_reset
”) W / etc / sudoers - również nie działało.
Dodanie „ Defaults env_keep += "PATH"
” do / etc / sudoers - również nie działało.
Najwyraźniej - pomimo dokumentacji man - sudo jest całkowicie zakodowane w odniesieniu do ŚCIEŻKI i nie zapewnia żadnej elastyczności w zakresie zatrzymywania ŚCIEŻKI użytkownika. Bardzo denerwujące, ponieważ nie mogę uruchamiać oprogramowania innego niż domyślny na podstawie uprawnień roota za pomocą sudo.