Bagaimana cara mengecualikan dari "Match Group" di SSHD?

13

Ada grup Match di konfigurasi SSHD:

cat /etc/ssh/sshd_config
...
    Match Group FOOGROUP
    ForceCommand /bin/customshell
...

Ada banyak pengguna di mesin yang ada di "FOOGROUP".

Pertanyaan saya: Bagaimana saya bisa mengecualikan pengguna tertentu yang ada di "FOOGROUP" dari "Match Group"?

evachristine
sumber

Jawaban:

14

The Matchoperator dapat mengambil beberapa argumen, memungkinkan aturan yang sangat fleksibel. Dalam hal ini, Anda dapat melakukan sesuatu seperti ini untuk mencapai apa yang Anda inginkan.

Match Group FOOGROUP User !username
  ForceCommand /bin/customshell

The !meniadakan argumen dilewatkan ke Userkriteria, sehingga bahkan jika pengguna usernameadalah dalam kelompok FOOGROUP, yang Matchtidak akan berhasil, dan usernametidak akan diberikan shell kustom pada logging di.

D_Bye
sumber
Dan apakah Anda 100% yakin, bahwa ini hanya mengecualikan "nama pengguna"? Dan pengguna lain yang bisa berada di FOOGROUP tidak akan tersentuh?
evachristine
2
Iya. Saya mengujinya sebelum memposting, dan berfungsi seperti yang saya jelaskan.
D_Bye
1
Tampaknya *,!usernameini adalah pendekatan yang lebih bersih. Namun kasus lain solusi Anda gagal adalah pencampuran Matchdengan ChrootDirectory(diuji pada kedua openssh 5.3p1 dan 7.4p1).
Ouki
4

Anda perlu menggunakan beberapa klausa dalam entri file konfigurasi Anda tetapi dengan cara yang sangat spesifik. Ada bug dalam beberapa pengaturan yang menyebabkan sintaksis yang umumnya direkomendasikan dan paling sederhana ("Match Group FOOGROUP User! Username") menyebabkan orang lain di grup gagal untuk Mencocokkan atau membiarkan mereka keluar dari chroot jail.

Pada Debian Jessie menggunakan OpenSSH_6.0p1 Debian-4, OpenSSL 1.0.2d saya mendapatkan hasil bahwa semua orang dalam grup tidak dapat lagi terhubung. Lainnya melaporkan istirahat penjara. Dalam kedua kasus, sebuah sintaks dari

Match Group FOOGROUP User *,!username

tampaknya bekerja tanpa efek samping. Semacam bug di parser tidak diragukan lagi.

Nadreck
sumber
0

dengan opsi di bawah ini saya dapat memenjarakan pengguna sftp dalam direktori yang ditentukan dan juga pengguna yang ditentukan dapat masuk melalui ssh.

Match Group groupname User *,!username

Terima kasih.

Logeshwaran Jeyakumar
sumber