第14章 ssh および sshd RHEL システムロールを使用した安全な通信の設定
管理者は、sshd システムロールを使用して SSH サーバーを設定し、ssh システムロールを使用して任意数の RHEL システムに同時に同じ設定の SSH クライアントを Red Hat Ansible Automation Platform で設定できます。
14.1. ssh Server のシステムロール変数 リンクのコピーリンクがクリップボードにコピーされました!
sshd システムロール Playbook では、設定と制限に応じて、SSH 設定ファイルのパラメーターを定義できます。
これらの変数が設定されていない場合には、システムロールは RHEL のデフォルト値と同じ sshd_config ファイルを作成します。
どのような場合でも、ブール値は sshd 設定で適切に yes と no としてレンダリングされます。リストを使用して複数行の設定項目を定義できます。以下に例を示します。
sshd_ListenAddress: - 0.0.0.0 - '::'
sshd_ListenAddress:
- 0.0.0.0
- '::'
レンダリングは以下のようになります。
ListenAddress 0.0.0.0 ListenAddress ::
ListenAddress 0.0.0.0
ListenAddress ::
sshd システムロールの変数
sshd_enable-
Falseに設定すると、ロールは完全に無効になります。デフォルトはTrueです。 sshd_skip_defaults-
Trueに設定すると、システムロールではデフォルト値が適用されません。代わりに、sshddict またはsshd_Key変数のいずれかを使用して、設定のデフォルト値をすべて指定します。デフォルトはFalseです。 sshd_manage_service-
Falseに設定すると、サービスはマネージドではなくなるので、起動時に有効化されず、起動または再読み込みされません。Ansible サービスモジュールが現在 AIX でenabledになっていないため、コンテナーまたは AIX 内で実行する時以外はデフォルトでTrueに設定されます。 sshd_allow_reload-
Falseに設定すると、設定の変更後にsshdは再読み込みされません。これはトラブルシューティングで役立ちます。変更した設定を適用するには、sshdを手動で再読み込みします。AIX を除き、sshd_manage_serviceと同じ値にデフォルト設定されます。ここで、sshd_manage_serviceはデフォルトでFalseに設定されますが、sshd_allow_reloadはデフォルトでTrueに設定されます。 sshd_install_serviceTrueに設定すると、ロールはsshdサービスのサービスファイルをインストールします。これにより、オペレーティングシステムで提供されるファイルが上書きされます。2 つ目のインスタンスを設定し、sshd_service変数も変更しない限り、Trueに設定しないでください。デフォルトはFalseです。ロールは、以下の変数でテンプレートとして参照するファイルを使用します。
sshd_service_template_service (default: templates/sshd.service.j2) sshd_service_template_at_service (default: templates/sshd@.service.j2) sshd_service_template_socket (default: templates/sshd.socket.j2)
sshd_service_template_service (default: templates/sshd.service.j2) sshd_service_template_at_service (default: templates/sshd@.service.j2) sshd_service_template_socket (default: templates/sshd.socket.j2)Copy to Clipboard Copied! Toggle word wrap Toggle overflow sshd_service-
この変数により
sshdサービス名が変更されます。これは、2 つ目のsshdサービスインスタンスを設定するのに役立ちます。 sshd設定が含まれる dict。以下に例を示します。
sshd: Compression: yes ListenAddress: - 0.0.0.0sshd: Compression: yes ListenAddress: - 0.0.0.0Copy to Clipboard Copied! Toggle word wrap Toggle overflow sshd_OptionNamedict の代わりに、
sshd_接頭辞とオプション名で設定される単純な変数を使用してオプションを定義できます。簡単な変数は、sshddict の値を上書きします。以下に例を示します。sshd_Compression: no
sshd_Compression: noCopy to Clipboard Copied! Toggle word wrap Toggle overflow sshd_matchandsshd_match_1tosshd_match_9-
dict のリスト、または Match セクションの dict のみ。これらの変数は、
sshddict で定義されている一致するブロックを上書きしないことに注意してください。すべてのソースは作成された設定ファイルに反映されます。
sshd システムロールのセカンダリー変数
これらの変数を使用して、サポートされている各プラットフォームに対応するデフォルトを上書きすることができます。
sshd_packages- この変数を使用して、インストール済みパッケージのデフォルトリストを上書きできます。
sshd_config_owner、sshd_config_group、sshd_config_mode-
このロールは、これらの変数を使用して生成する
openssh設定ファイルの所有権およびパーミッションを設定できます。 sshd_config_file-
このロールが作成した
opensshサーバー設定を保存するパス。 sshd_config_namespaceこの変数のデフォルト値は null です。これは、ロールがシステムのデフォルトを含む設定ファイルの内容全体を定義することを意味します。または、この変数を使用して、他のロールから、またはドロップインディレクトリーをサポートしないシステムの 1 つの Playbook 内の複数の場所から、このロールを呼び出すことができます。
sshd_skip_defaults変数は無視され、この場合、システムのデフォルトは使用されません。この変数が設定されている場合、ロールは指定された namespace の下の既存の設定ファイルの設定スニペットに指定する設定を配置します。シナリオにロールを複数回適用する必要がある場合は、アプリケーションごとに異なる namespace を選択する必要があります。
注記openssh設定ファイルの制限は引き続き適用されます。たとえば、設定ファイルで指定した最初のオプションだけが、ほとんどの設定オプションで有効です。技術的には、ロールは他の一致ブロックが含まれていない限り、スニペットを "Match all" ブロックに配置し、既存の設定ファイル内の以前の一致ブロックに関係なく適用されるようにします。これにより、異なるロール呼び出しから競合しないオプションを設定できます。
sshd_binary-
opensshのsshd実行可能ファイルへのパス。 sshd_service-
sshdサービスの名前。デフォルトでは、この変数には、ターゲットプラットフォームが使用するsshdサービスの名前が含まれます。ロールがsshd_install_service変数を使用する場合は、これを使用してカスタムのsshdサービスの名前を設定することもできます。 sshd_verify_hostkeys-
デフォルトは
autoです。autoに設定すると、生成された設定ファイルに存在するホストキーがすべてリスト表示され、存在しないパスが生成されます。また、パーミッションおよびファイルの所有者はデフォルト値に設定されます。これは、ロールがデプロイメント段階で使用され、サービスが最初の試行で起動できるようにする場合に便利です。このチェックを無効にするには、この変数を空のリスト[]に設定します。 sshd_hostkey_owner,sshd_hostkey_group,sshd_hostkey_mode-
これらの変数を使用して、
sshd_verify_hostkeysからホストキーの所有権とパーミッションを設定します。 sshd_sysconfig-
RHEL ベースのシステムでは、この変数は
sshdサービスに関する追加情報を設定します。trueに設定すると、このロールは以下の設定に基づいて/etc/sysconfig/sshd設定ファイルも管理します。デフォルトはfalseです。 sshd_sysconfig_override_crypto_policy-
RHEL では、
trueに設定すると、この変数はシステム全体の暗号化ポリシーを上書きします。デフォルトはfalseです。 sshd_sysconfig_use_strong_rng-
RHEL ベースのシステムでは、この変数により、
sshdは、引数として指定されたバイト数を使用して、openssl乱数ジェネレーターを強制的に再シードすることができます。デフォルトは0で、この機能を無効にします。システムにハードウェア乱数ジェネレーターがない場合は、この機能を有効にしないでください。