15.4. 시스템 역할을 사용하여 SSH 서버에서 시스템 전체 암호화 정책 덮어쓰기

sshd RHEL 시스템 역할을 사용하여 SSH 서버에서 시스템 전체 암호화 정책을 재정의할 수 있습니다.

사전 요구 사항

절차

  1. 다음 콘텐츠를 사용하여 플레이북 파일(예: ~/playbook.yml )을 생성합니다.

    - name: Overriding the system-wide cryptographic policy
      hosts: managed-node-01.example.com
      roles:
        - rhel_system_roles.sshd
      vars:
        sshd_sysconfig: true
        sshd_sysconfig_override_crypto_policy: true
        sshd_KexAlgorithms: ecdh-sha2-nistp521
        sshd_Ciphers: aes256-ctr
        sshd_MACs: hmac-sha2-512-etm@openssh.com
        sshd_HostKeyAlgorithms: rsa-sha2-512,rsa-sha2-256
    • sshd_KexAlgorithms:: 키 교환 알고리즘을 선택할 수 있습니다 (예: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521, diffie-hellman-group14-group14-sha1 ) 또는 diffie-hellman-group-group-sha -sha-sha-sha-sha-sha-sha 1 .
    • sshd_Ciphers:: 암호를 선택할 수 있습니다 (예: aes128-ctr,aes192-ctr, 또는 aes256-ctr ).
    • sshd_MACs:: MACs (예: hmac-sha2-256,hmac-sha2-512 ) 또는 hmac-sha1 을 선택할 수 있습니다.
    • sshd_HostKeyAlgorithms:: 공개 키 알고리즘을 선택할 수 있습니다 (예: ecdsa-sha2-nistp256,ecdsa-sha2-nistp384,ecdsa-sha2-nistp521,ssh-rsa, 또는 ssh-dss ).

    RHEL 9 관리 노드에서 시스템 역할은 암호화 옵션이 자동으로 적용되는 /etc/ssh/sshd_config.d/00-ansible_system_role.conf 파일에 구성을 씁니다. sshd_config_file 변수를 사용하여 파일을 변경할 수 있습니다. 그러나 구성이 효과적임을 확인하려면 구성된 암호화 정책을 포함하는 /etc/ssh/sshd_config.d/50-redhat.conf 파일을 사전 지정하는 파일 이름을 사용합니다.

    RHEL 8 관리 노드에서 sshd_sysconfig_override_crypto_policysshd_sysconfig 변수를 true 로 설정하여 재정의를 활성화해야 합니다.

  2. 플레이북 구문을 확인합니다.

    $ ansible-playbook --syntax-check ~/playbook.yml

    이 명령은 구문만 검증하고 잘못되었지만 유효한 구성으로부터 보호하지 않습니다.

  3. 플레이북을 실행합니다.

    $ ansible-playbook ~/playbook.yml

검증

  • 자세한 SSH 연결을 사용하여 절차의 성공 여부를 확인하고 다음 출력에서 정의된 변수를 확인할 수 있습니다.

    $ ssh -vvv <ssh_server>
    ...
    debug2: peer server KEXINIT proposal
    debug2: KEX algorithms: ecdh-sha2-nistp521
    debug2: host key algorithms: rsa-sha2-512,rsa-sha2-256
    debug2: ciphers ctos: aes256-ctr
    debug2: ciphers stoc: aes256-ctr
    debug2: MACs ctos: hmac-sha2-512-etm@openssh.com
    debug2: MACs stoc: hmac-sha2-512-etm@openssh.com
    ...

추가 리소스

  • /usr/share/ansible/roles/rhel-system-roles.sshd/README.md 파일
  • /usr/share/doc/rhel-system-roles/sshd/ 디렉터리