web-dev-qa-db-ja.com

SSHDの「マッチグループ」から除外する方法

SSHD構成に一致グループがあります。

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

マシンには「FOOGROUP」にいる多くのユーザーがいます。

私の質問:「一致グループ」から「FOOGROUP」に含まれている特定のユーザーを除外するにはどうすればよいですか?

14
evachristine

Match演算子は複数の引数を取ることができるため、非常に柔軟なルールが可能です。この場合、あなたはあなたが望むものを達成するためにこのようなことをすることができます。

Match Group FOOGROUP User !username
  ForceCommand /bin/customshell

!User基準に渡された引数を無効にするため、ユーザーusernameがグループFOOGROUPに属していても、Matchは成功しません。およびusernameには、ログイン時にカスタムシェルが与えられません。

15
D_Bye

設定ファイルのエントリで複数の句を使用する必要がありますが、非常に特殊な方法です。一部の設定には、一般的に推奨される最も単純な構文(「Match Group FOOGROUP User!username」)が原因で、グループ内の他の全員が一致しなかったり、chroot刑務所から逃れたりするバグがあります。

OpenSSH_6.0p1 Debian-4、OpenSSL 1.0.2dを使用するDebian Jessieでは、グループ内の他の誰もが接続できなくなるという結果が得られます。 その他 脱獄の報告。どちらの場合も、構文

Match Group FOOGROUP User *,!username

副作用なしで動作するようです。間違いなく、パーサーのバグの一種です。

4
Nadreck

以下のオプションを使用すると、指定したディレクトリ内のsftpユーザーと、sshを介してログインできる指定したユーザーを投獄できます。

Match Group groupname User *,!username

ありがとう。