Akun Pengguna Centos nologin tetapi memungkinkan untuk masuk ke akun


12

Saya baru mengenal CentOS (menjalankan CentOS 6). Saya memiliki pengalaman sebelumnya dengan OpenSuse.

Saya mencoba menyiapkan akun untuk pengguna. Saya tidak ingin akun tersedia untuk masuk melalui ssh atau melalui layar masuk. Tapi, saya masih ingin bisa masuk ke pengguna dengan menggunakan perintah su. Ini memungkinkan saya untuk menjalankan aplikasi tertentu sebagai pengguna dengan akses terbatas. Pengguna bukan pengguna super, sehingga tidak dapat mempengaruhi aplikasi pengguna lain.

Bantuan apa pun akan sangat dihargai. Saya biasanya ingin menggunakan ini untuk menjalankan server Glassfish dll.


Jadi bagaimana Anda mengatasinya dengan OpenSuSE?
Nils

Jawaban:


15

Pada centos, Anda akan mengatur dengan pengguna tanpa shell dengan menggunakan / sbin / nologin:

[root@localhost ~]# grep named /etc/passwd
named:x:25:25:Named:/var/named:/sbin/nologin
[root@localhost ~]# 

Jika Anda perlu menjadi itu, gunakan parameter -s dan masukkan argumen shell pilihan Anda, seperti:

[root@localhost ~]# su - named -s /bin/bash
-bash-4.1$ 

Perhatikan bahwa jika Anda menggunakan bash, ia akan membaca pengaturan dari / etc / profile terlebih dahulu dan akan default ke pengaturan tersebut jika tidak ada .bash_profile, .bash_login atau.profile di direktori home pengguna. Tentu saja, jika Anda ingin menggunakan pengaturan lingkungan yang ada yang ada di root, Anda bisa menghapus tanda hubung:

keluar [

root@localhost ~]# su - named -s /bin/bash
-bash-4.1$ echo $PATH
/usr/local/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin
-bash-4.1$ exit
logout
[root@localhost ~]# su named -s /bin/bash
bash-4.1$ echo $PATH
/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
bash-4.1$ 

0

Salah satu cara umum adalah dengan mengatur shell pengguna /bin/false


Saya sudah mencoba mengaturnya ke / bin / false tetapi sepertinya centOS 6 tidak memiliki opsi ini. Itu memang memiliki opsi bin / nologin, tetapi ini tidak memungkinkan saya untuk masuk ke akun pengguna.

cobasu -m username
unbeli

Jika saya mengatur pengguna ke / sbin / nologin dan saya mencoba su dengan opsi -m itu memberitahu saya bahwa akun saat ini tidak tersedia. Saya juga mencoba menambahkan / bin / false ke file shells. Ketika saya melakukan ini, perintah su tidak akan beralih ke pengguna.

ok, JANGAN tambahkan / bin / false ke file shells. Setel shell pengguna ke / bin / false. Gunakan su -m.
unbeli

Saya telah menghapusnya dari file / etc / shells dan mengatur shell pengguna ke / bin / false menggunakan perintah usermod. Jika saya sekarang mencoba untuk su -m nama pengguna, itu memberitahu saya bahwa saya tidak memiliki izin untuk .bashrc. Saya login sebagai root. Jika sekarang saya lakukan: su - username itu memberi saya tidak ada kesalahan, tapi saya masih dilihat sebagai root. Apakah ini normal dalam Centos?

0

Saya biasanya memasukkan "x" ke dalam bidang kata sandi terenkripsi dari pengguna "teknis" tersebut. Jadi pengguna tidak akan memiliki kata sandi yang memungkinkan. Jika sekarang juga ada kunci publik di otor_keys pengguna itu, akun itu harus cukup aman.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.