sudo izin tidak habis waktu selama upgrade apt-get

9

Pertimbangkan ini: Anda mengetik $sudo apt-get upgradedan mendapatkan daftar hal-hal yang perlu ditingkatkan dengan konfirmasi "Y \ n". sebelum Anda dapat membaca daftar, dan ketik "Y" atau "n", telepon berdering, atau bos Anda masuk, atau Anda melakukan hal lain. Anda kembali satu jam kemudian, dan tekan Y untuk menginstal pembaruan.

Anda tidak dimintai kata sandi lagi. mungkin, setiap perintah sudo lagi di shell akan dieksekusi, karena timer telah ditunda menunggu input pengguna. Atau pengguna dapat mematikan proses pembaruan dan melakukan sesuatu seperti sudo -idan hanya tinggal di root tanpa batas.

Saya menggunakan ubuntu mate 14.04

Apakah ini pengecualian keamanan yang patut diperhatikan? Haruskah saya mencoba melaporkannya di suatu tempat? Jika ya, dimana?

j0h
sumber
5
Apa yang Anda maksud dengan "mungkin"? Sudahkah Anda mencobanya atau tidak?
luckyrumo
3
Saya memang mencoba ini sekarang, bahkan dengan Defaults passwd_timeout=3 di file sudoers saya, saat menjalankan sudo apt-get upgradekata sandi tidak diminta. Itu tidak baik
Sergiy Kolodyazhnyy
Saya tidak punya masalah, dengan pengaturan standar pada Ubuntu 15.04
luckyrumo
1
@TobiasKienzler tidak. Saya belum mengubah file sudoers saya dengan cara apa pun kecuali menambahkan bagian passwd_timeout. Chech jawabanku. Masalahnya adalah dengan batas waktu timestamp. Ini adalah opsi yang berbeda
Sergiy Kolodyazhnyy
1
@Serg. Begitu ya, ada dua timeout. Betapa mudahnya membingungkan: / Terima kasih :)
Tobias Kienzler

Jawaban:

22

Anda tidak dimintai kata sandi karena sudotelah melakukan tugasnya dan mulai apt-getsebagai root. Saat berada di prompt, apt-getprosesnya masih berjalan, dan karena itu masih berjalan sebagai root, tidak perlu memasukkan kata sandi Anda lagi.

Dengan kata lain, selama sudoproses sedang berjalan, Anda tidak akan diminta memasukkan kata sandi lagi untuk proses itu; sudotidak mengganggu proses setiap 15 menit (batas waktu default) dan meminta kata sandi Anda.

Sekarang, jika Anda membuka terminal lain dan mencoba menjalankan proses lain di bawah sudo, maka Anda akan diminta kata sandi Anda.

saiarcot895
sumber
5
... atau memang di terminal yang sama , setelah perintah sudo yang ditunda selesai
steeldriver
3

sudotimestamp_timeoutVariabel default adalah 15 menit. Ini berarti bahwa jika Anda mengklik n pada sudo apt-get upgradedalam 15 menit, Anda dapat mengantisipasi memasukkan shell root dengan sudo -i. Itulah tepatnya yang terjadi. Namun, jika Anda menetapkannya /etc/sudoerssebagai Default timestamp_timeout 0, Anda akan diminta untuk melakukannya setiap saat. Secara pribadi, saya telah menetapkan ke 3. Jika sudo Anda tidak habis bahkan setelah 15 menit, maka ada sesuatu yang salah dengan sudobiner Anda .

Perilaku ini bukan lubang keamanan, melainkan "fitur kenyamanan" untuk pengguna sudo. Namun, saya dapat setuju bahwa untuk keamanan yang lebih ketat timestamp_timeoutharus diatur ke waktu yang jauh lebih pendek dari 15 menit.

Catatan : passwd_timeoutopsi yang saya sebutkan di komentar saya benar-benar kehabisan prompt kata sandi ketika Anda tidak mengetik kata sandi selama x menit. Itulah salah satu momen indah di mana Anda menyadari bahwa Anda harus membaca man sudoerslebih cermat.

Sergiy Kolodyazhnyy
sumber
2
perhatikan bahwa Anda tidak boleh mengedit /etc/sudoerssecara langsung, gunakan visudosebaliknya yang memeriksa kesalahan sintaksis sebelum mengganti sudoersdengan file yang salah yang mungkin sepenuhnya mengunci Anda dari akses root
Tobias Kienzler
0

Saya akan menyarankan Anda untuk mengetik sudo apt-get upgrade && exitini akan keluar dari terminal setelah menyelesaikan peningkatan. Ketika pemutakhiran dibatalkan, terminal tidak mau menutup tetapi saya pikir itu tidak akan terjadi.

Marton
sumber