12.5. 제외되지 않은 구성에 sshd 시스템 역할 사용

일반적으로 sshd 시스템 역할을 적용하면 전체 구성을 덮어씁니다. 이전에 구성을 조정한 경우(예: 다른 시스템 역할 또는 플레이북이 있는 경우) 문제가 될 수 있습니다. 다른 옵션을 유지하면서 선택한 구성 옵션에 대해서만 sshd 시스템 역할을 적용하려면 제외 구성을 사용할 수 있습니다.

RHEL 8 이전 버전에서는 구성 스니펫을 사용하여 비독점 구성을 적용할 수 있습니다. 자세한 내용은 RHEL 9 설명서에서는 SSH 서버 시스템 역할 사용을 참조하십시오.

RHEL 9에서는 드롭인 디렉터리의 파일을 사용하여 비독점 구성을 적용할 수 있습니다. 기본 구성 파일은 드롭인 디렉터리에 이미 /etc/ssh/sshd_config.d/00-ansible_system_role.conf 로 배치되어 있습니다.

사전 요구 사항

  • sshd 시스템 역할로 구성하려는 시스템인 하나 이상의 관리형 노드에 대한 액세스 및 권한.
  • Red Hat Ansible Core가 기타 시스템을 구성하는 시스템인 제어 노드 액세스 및 사용 권한.

    제어 노드에서 다음이 있어야 합니다.

    • ansible-core 패키지가 설치되어 있습니다.
    • 관리 노드를 나열하는 인벤토리 파일.
    • 다른 RHEL 시스템 역할에 대한 플레이북입니다.

절차

  1. sshd_config_file 변수의 구성 스니펫을 플레이북에 추가합니다.

    ---
    - hosts: all
      tasks:
      - name: <Configure sshd to accept some useful environment variables>
        include_role:
          name: rhel-system-roles.sshd
        vars:
          sshd_config_file: /etc/ssh/sshd_config.d/<42-my-application>.conf
          sshd:
            # Environment variables to accept
            AcceptEnv:
              LANG
              LS_COLORS
              EDITOR

    sshd_config_file 변수에서 sshd 시스템 역할이 구성 옵션을 쓰는 .conf 파일을 정의합니다.

    2자리 접두사를 사용합니다(예: 42- )를 사용하여 구성 파일이 적용되는 순서를 지정합니다.

    인벤토리에 플레이북을 적용하면 역할은 sshd_config_file 변수에서 정의한 파일에 다음 구성 옵션을 추가합니다.

    # Ansible managed
    #
    AcceptEnv LANG LS_COLORS EDITOR

검증

  • 선택 사항: 플레이북 구문을 확인합니다.

    # ansible-playbook --syntax-check playbook.yml -i inventory_file

추가 리소스

  • /usr/share/doc/rhel-system-roles/sshd/README.md 파일
  • ansible-playbook(1) 도움말 페이지