SSH 上の Match Group からユーザーを除外する

SSH 上の Match Group からユーザーを除外する

sshd 構成の match group ステートメントからユーザーを除外する際に問題が発生しています。

すでにこのようにユーザー除外を宣言しています

Match Group sftpusergroup User *,!"sftp_user"

これは、ユーザーを "" 内に配置した後にのみ機能し始めました。ユーザー名の _ が原因と思われます。

今、この除外に2番目のユーザーを追加する必要がありますが、それを行うと、すべてのユーザーがサーバーに接続しようとしたときに次のエラーが発生します。

16:23:56 エラー: ネットワーク エラー: 接続が拒否されました

16:23:56 エラー: サーバーに接続できませんでした

2番目の除外を追加しました

Match Group sftpusergroup User *,!"sftp_user",!"sftp_user_2"

また、作ってみました

Match Group sftpusergroup User *,!"sftp_user",!sftp_user_2

しかし、常に同じ結果になります。これまでにこの動作を経験した人はいますか?

答え1

これまでこのような行動は見たことがありませんでしたが、man ssh_configなるほど:

パターン リストは、カンマで区切られたパターンのリストです。パターン リスト内のパターンは、感嘆符 ('!') を前に付けることによって否定できます。たとえば、組織内の「ダイヤルアップ」プール以外のどこからでもキーを使用できるようにするには、authorized_keys 内の次のエントリを使用できます。

から="!.dialup.example.com、.example.com"

おそらくこれはうまくいくでしょう:

Match Group sftpusergroup User "*,!sftp_user,!sftp_user_2"

ユーザーリスト全体を引用符で囲みます。

関連情報