Mengapa kami harus kedaluwarsa pada akun yang terkunci untuk sepenuhnya mencegah akses?

8

Dari man usermod:

Catatan: jika Anda ingin mengunci akun (tidak hanya akses dengan kata sandi), Anda juga harus mengatur EXPIRE_DATE menjadi 1.

  • Mengapa kami harus kedaluwarsa pada akun yang terkunci untuk benar-benar mencegah akses ke akun?
  • Apa yang akan terjadi jika saya tidak kedaluwarsa pada akun yang terkunci?
Sinoosh
sumber

Jawaban:

13

usermod -L sebenarnya hanya mengunci kata sandi pengguna, sehingga pengguna masih dapat masuk menggunakan metode lain misalnya sesi ssh yang menggunakan otentikasi kunci publik.

Tetapi jika Anda mengatur EXPIRE_DATEke 1, akun akan sepenuhnya kedaluwarsa dan pengguna tidak dapat menggunakannya dengan cara apa pun. Ini karena 1 sama dengan yang kedaluwarsa pada 1970-01-01 00:00:01.

Ravexina
sumber
1
Bagaimana dengan usermod -L -e 300 username? Akun akan kedaluwarsa sepenuhnya?
Sinoosh
1
@Sinoosh itu entah bagaimana sama. tanggal kedaluwarsa akan ditetapkan untuk Oct 28, 1970membuat akun kedaluwarsa.
Ravexina
1
@Ravexina Akan lebih baik jika Anda benar-benar menyebutnya "otentikasi kunci publik SSH" dalam jawaban Anda, karena itu adalah mekanisme otentikasi yang mem-bypass kata sandi, bukan SSH per se;)
marcelm
1
@marcelm kamu benar. Diperbarui jawabannya ...
Ravexina
2

Karena kunci ssh tidak peduli dengan kata sandi, Anda memerlukan akun untuk mati.

Kebijaksanaan lama adalah mengubah shell pengguna menjadi /bin/false; Namun ini sebenarnya tidak berhasil.

Joshua
sumber
"ubah shell pengguna ke / bin / false; namun ini tidak benar-benar berfungsi" [rujukan?]
user60561
3
@ user60561 beberapa perintah ssh tidak menggunakan shell, seperti meneruskan port.
Joshua