OpenSSH:一致ブロックを終了する方法

OpenSSH:一致ブロックを終了する方法

Match/etc/ssh/sshd_config特定のユーザーがSFTPを使用できないようにするために、OpenSSH(debian)のブロックを使用しています。

# my stuff
Match group sftponly
    X11Forwarding no
    AllowTcpForwarding no
    ForceCommand internal-sftp -u 0002
    ChrootDirectory %h

ご覧のとおり、私はカスタム設定#my stuffファイルにコメントを使用します(設定ファイルの最後に配置しました)。今度はログイン速度を上げるためにそのディレクティブを設定に
追加したいが、OpenSSHでは。UseDNS noDirective 'UseDNS' is not allowed within a Match block

End Matchさて、一致するブロックを終了するような構文があるかどうか疑問に思います。

答え1

openssh 6.5p1 以降を使用して一致ブロックを終了するには、次の行を使用します。Match all

/etc/ssh/sshd_configこれは私のファイルから取得したコードの断片です。

# Change to no to disable tunnelled clear text passwords
PasswordAuthentication no

Match host 192.168.1.12
    PasswordAuthentication yes
Match all

X11Forwarding yes
X11DisplayOffset 10

ソールのある線はMatch機能しません。 (これは私にはうまくいきませんでした。sshdが起動を拒否しました)

答え2

Matchブロックを明示的に終了する方法はないようです。 ~からsshd_config のマニュアルページ:

一致行のすべての条件が満たされると、次の行のキーワードが設定ファイルのグローバルセクションで設定されたキーワードよりも優先されます。一致する他の行またはファイルの終わりまで。

したがって、Matchブロックはファイルの末尾になければなりませんsshd_config

答え3

私たちは両方ともコアにMatch言及しなければならないと思います。Host

Host

次の宣言(次Hostまたは Matchキーワードまで)を、キーワードの後に​​提供されるパターンの1つと一致するホストにのみ制限します。

Match

HostMatchキーワード次の条件が満たされている場合にのみ(nextまたはキーワードまで)、次の文を使用するように制限します。Match

マニュアルを読み、古いman ssh_config制限Host *ブロックがブロックかブロックでMatch allあるかにかかわらず、古い制限ブロックをリセットします。MatchHost

関連情報