Katakanlah saya membuat pengguna bernama "palsu" menggunakan adduser
perintah. Bagaimana saya bisa memastikan pengguna ini TIDAK akan menjadi opsi masuk yang layak, tanpa menonaktifkan akun. Singkatnya, saya ingin akun dapat diakses melalui su - bogus
, tetapi saya tidak ingin dapat diakses melalui prompt login reguler.
Mencari-cari di sekitar, sepertinya saya perlu menonaktifkan kata sandi pengguna itu, tetapi melakukan passwd -d bogus
itu tidak membantu. Bahkan, itu membuat segalanya lebih buruk, karena sekarang saya bisa masuk ke bogus tanpa mengetik kata sandi.
Apakah ada cara untuk menonaktifkan login reguler untuk akun yang diberikan?
Catatan: Agar lebih jelas, saya tahu cara menghapus pengguna dari opsi menu layar masuk grafis seperti gdm, tetapi metode ini hanya menyembunyikan akun tanpa benar-benar menonaktifkan login. Saya mencari cara untuk menonaktifkan login reguler sepenuhnya, termasuk mode teks.
sumber
-d
adalah bendera untuk menghapus kata sandi. Itu berbeda dari menonaktifkannya (direferensikan sebagai penguncian, lihat jawaban Chad).Jawaban:
adalah apa yang kamu inginkan.
Itu akan mengunci akun pengguna. Tapi kamu masih bisa
tetapi Anda harus
su - user
root.Atau, Anda dapat melakukan hal yang sama dengan menambahkan
!
kata sandi pengguna di/etc/shadow
(ini semuapasswd -l
dilakukan di belakang layar). Danpasswd -u
akan membatalkan ini.sumber
passwd -l
opsi ini, Anda harus menyadari bahwa pengguna dapat masuk menggunakan token otentikasi lain (mis. Kunci SSH).--disabled-password
opsi yang diberikanadduser
? Apakah membuat pengguna tanpa--disabled-password
dan kemudian berjalanpasswd -l
pada pengguna itu mencapai hasil yang sama dengan berlariadduser
dengan--disabled-password
di tempat pertama?Halaman manual
passwd(1)
mengatakan tentangpasswd -l
:Begitu
Sepertinya saya menyukai cara yang tepat untuk menonaktifkan akun yang seharusnya tidak dapat digunakan pengguna lagi (misalnya karena dia meninggalkan perusahaan).
sumber
passwd -l
apakah memblokirssh
koneksi untuk pengguna, danusermod --expiredate 1
tidak!passwd -l
tidak lagi memblokirssh
koneksi untuk pengguna, danusermod --expiredate 1 user
tidak memblokir. Perman passwd
Anda juga dapat menggunakanchage -E 0 user
untuk memblokir pengguna. Setelah mendaftarusermod
atauchage
saya bisasudo su user
usermod --expiredate 0 [LOGIN]
juga berfungsi, menetapkan tanggal kedaluwarsa menjadi 1 Januari 1970 sedangkan 1 menetapkan ini menjadi 2 Januari 1970.Ada dua metode untuk mencegah pengguna dapat masuk:
/etc/passwd
passwd
perintah dengan-l
saklarDalam kasus kedua, pengguna dapat masuk menggunakan token otentikasi lain (mis. Kunci SSH).
Metode # 1
vi /etc/passwd
Sekarang Anda berada di
passwd
file, tekan Insuntuk mengedit file.Ubah baris di bawah ini dengan
nologin
opsi (/bin/bash
berarti pengguna dapat login).untuk ini.
nologin
berarti pengguna tidak dapat masuk.(atau dengan / bin / sbin / nologin)
Metode # 2
Untuk mengunci pengguna:
passwd -l username
Untuk membuka kunci pengguna:
passwd -u username
sumber
/usr/sbin/nologin
bukan/bin/nologin
.Tugasnya cukup mudah, Anda hanya perlu membuat beberapa perubahan pada
/etc/passwd
file.Cukup Anda harus mengubah shell yang umumnya secara default
/bin/bash
Yaitu Anda dapat login menggunakan shell ini untuk/bin/nologin
atau/bin/false
. Dianjurkan untuk mengubahnya/bin/nologin
karena/bin/false
sudah usang.sumber
Atur
/bin/false
sebagai shell/etc/passwd
sumber
/bin/false
, ia mencegah menggunakan su untuk bertindak sebagai pengguna itu. Selain itu, menggunakan/bin/false
tidak menghasilkan kesalahan atau petunjuk lain tentang apa yang salah - dalam kasus di mana seseorang ingin mencegah bahkan su dari digunakan untuk mendapatkan shell sebagai pengguna itu, shell harus diubah/sbin/nologin
yang memang menghasilkan kesalahan.su
masih mungkin bagi pengguna dengan/bin/false
kerang dipasswd
- hanya menggunakan opsi--shell
:su - --shell /bin/sh bogus
./usr/sbin/nologin
memiliki efek yang sama seperti/bin/false
, tetapi juga menunjukkan pesan informasi yang bermanfaat.Saat kami mengunci pengguna menggunakan
passwd -l user
perintah, "!!
" ditunjukkan dalam/etc/shadow
file. Tetapi kita masih dapat beralih ke shell pengguna dari akun root, tetapi tidak dapat beralih ke akun pengguna oleh shell login pengguna normal lainnya.Kami juga dapat menonaktifkan akun dengan menyediakan
/bin/nologin
atau/bin/false
ke/etc/passwd
file. Jadi pengguna mungkin tidak dapat masuk.sumber
Anda bisa menggunakan perintah
sumber