sshd と sftp サブシステムの異なる「RequiredAuthentications2」

sshd と sftp サブシステムの異なる「RequiredAuthentications2」

現在、SSH サーバーで 2 要素認証を使用しているため、sshd_config に「RequiredAuthentications2 publickey,keyboard-interactive」が含まれています (publickey はキー用、keyboard-interactive は PAM 経由で処理される 2 要素用)

開発者の作業を容易にするために、sftp サブシステムの 2 要素認証の要件を無効にしたいと考えています。

私はすでに「Match サブシステム sftp」のようなものを検索しました(利用可能な「Match グループ」のように、後で「RequiredAuthentications2 公開キー」のみを定義できますが、それは不可能のようです。

私が調べたもう 1 つのことは、PAM をチェックして、sftp サブシステム用に別の構成を定義できるかどうか (これは実行できないようです。pam のサービスは常に 'ssh' です)、または sshd pam conf に "auth [success=1 default=ignore] pam_succeed_if.so quiet subsystem in sftp" のような内容を含めることができるかどうかです。

何かヒントはありますか? (別の設定で sftp 専用の別の sshd インスタンスを設定する以外に)

答え1

グループ ルールでセキュリティを緩めるのではなく、デフォルトのセキュリティを使用して、グループ ルールでセキュリティを強化します。 には 2 要素認証が必要ですusersが、 には必要ない例を次に示しますsftp-users

# Only these groups can connect
AllowGroups users sftp-users

Match Group users
    RequiredAuthenticatios2 publickey,keyboard-interactive

Match Group sftp-users 
    ChrootDirectory %h
    X11Forwarding no
    AllowTcpForwarding no

私はこれをUbuntuシステムで試作し、CentOSシステムのマニュアルページの と の代わりに sshd_config マニュアルページを指定しました。AuthenticationMethods同等の行は次の通りです。RequiredAuthenticatios1RequiredAuthenticatios2

    AuthenticationMethods publickey,password

関連情報