Membatasi akses SSH berdasarkan kata sandi per pengguna tetapi mengizinkan otentikasi kunci

22

Apakah mungkin untuk menonaktifkan akses PASSWORD SSH ke pengguna tetapi mengizinkan otentikasi Kunci pada basis per pengguna? Maksud saya, saya memiliki userA yang saya tidak ingin memberikan akses berbasis kata sandi TETAPI saya tidak ingin dia hanya menggunakan otentikasi kunci untuk mengakses server. Terima kasih

pilin
sumber

Jawaban:

49

Anda dapat menambahkan bagian "Cocokkan" agar cocok dengan pengguna atau grup tertentu di bagian bawah sshd_config, seperti:

Match user stew
PasswordAuthentication no

atau

Match group dumbusers
PasswordAuthentication no
rebus
sumber
9
Saya akan menghindari indentasi karena menunjukkan bahwa hanya baris indentasi dipengaruhi oleh Matchketika pada kenyataannya, semua konfigurasi terpengaruh hingga Matcharahan berikutnya . Bisa membingungkan seseorang yang tidak terbiasa dengan sintaksis.
Michael Mior
2
@MichaelMior apakah ada cara untuk "EndMatch"?
Nick T
4
@NickT Matchbekerja sampai berikutnya Matchatau Hostkata kunci. Anda bisa menggunakannya Match user *.
Michael Mior
@MichaelMior Apakah ini berarti bahwa jika Anda menggunakan Match user ZaQwEdCxS, Anda dapat membuat satu set garis konfigurasi yang tidak dapat digunakan oleh siapa pun, untuk sementara atau selamanya?
Tripp Kinetics
Itu berarti bahwa semua baris konfigurasi setelah itu hanya akan berlaku untuk pengguna yang bernama ZaQwEdCxS. Jika Anda memiliki pertanyaan yang berbeda, Anda harus mengajukan pertanyaan baru.
Michael Mior
4

Kunci saja kata sandi pengguna yang tidak ingin Anda masuki dengan kata sandi:

usermod -L <user>

Kemudian, tempatkan kunci publik yang valid dalam .ssh/authorized_keysfile mereka dan mereka hanya akan bisa masuk dengan kunci pribadi yang sesuai, tetapi tidak dengan kata sandi.

Catatan: Ini akan merusak sudo kecuali jika pengguna memiliki NOPASSWD: dalam entri visudo mereka

Oliver
sumber
8
Itu juga akan merusak sudo. Mungkin bukan masalah dalam kasus ini, tetapi perlu disebutkan.
EEAA
Ya itu benar. Saya seharusnya menyebutkannya.
Oliver
1
Beberapa pengaturan OpenSSH (mis. Saya pikir Ubuntu 14.04 dalam konfigurasi default) jangan biarkan pengguna terkunci, bahkan melalui
otor_keys
@NilsToedtmann dapatkah Anda mengutip sumber untuk verifikasi? Ini akan sangat penting untuk dicatat dalam jawabannya, juga, jika demikian.
Metagrapher
-3

Anda harus melihat

/etc/ssh/sshd_config

Saya pikir apa yang Anda cari

PasswordAuthentication yes

ubah ke tidak dan jangan lupa untuk memulai kembali sshd

alexus
sumber
2
Saya mengetahui hal ini - ini adalah pengaturan GLOBAL - Saya ingin lebih banyak opsi granular - itu sebabnya saya mengatakan "basis per pengguna" - Saya ingin ini hanya untuk beberapa pengguna (digunakan untuk komunikasi innercluster antara server di cluster) - tidak untuk semua pengguna
gyre
oh benar, maaf saya tidak membacanya dengan benar maka apa yang disarankan @stew adalah cara untuk pergi
alexus