8.2. SSH 서버 시스템 역할을 사용하여 OpenSSH 서버 구성
SSH 서버 시스템 역할을 사용하여 Ansible 플레이북을 실행하여 여러 SSH 서버를 구성할 수 있습니다.
사전 요구 사항
- SSH 서버 시스템 역할을 사용하여 구성하려는 시스템인 하나 이상의 관리형 노드에 대한 액세스 및 권한.
Red Hat Ansible Engine이 다른 시스템을 구성하는 시스템인 제어 노드에 대한 액세스 및 권한.
제어 노드에서 다음을 수행합니다.
- Red Hat Ansible Engine이 설치되어 있어야 합니다.
-
rhel-system-roles패키지가 설치되어 있습니다. - 관리 노드를 나열하는 인벤토리 파일.
절차
SSH 서버 시스템 역할에 대한 예제 플레이북을 복사합니다.
cp /usr/share/doc/rhel-system-roles-VERSION/sshd/example-root-login-playbook.yml path/custom-playbook.yml
# cp /usr/share/doc/rhel-system-roles-VERSION/sshd/example-root-login-playbook.yml path/custom-playbook.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 텍스트 편집기를 사용하여 복사된 플레이북을 엽니다. 예를 들면 다음과 같습니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Playbook은 다음을 수행하도록 구성된 SSH 서버로 관리 노드를 구성합니다.
-
암호 및
root사용자 로그인이 비활성화되어 있습니다 -
암호 및
root사용자 로그인은 서브넷192.0.2.0/24에서만 활성화됩니다.
환경 설정에 따라 변수를 수정할 수 있습니다. 자세한 내용은 SSH 서버 시스템 역할 변수를 참조하십시오.
-
암호 및
선택 사항: 플레이북 구문을 확인합니다.
ansible-playbook --syntax-check path/custom-playbook.yml
# ansible-playbook --syntax-check path/custom-playbook.ymlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 인벤토리 파일에서 플레이북을 실행합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
SSH 서버에 로그인합니다.
ssh user1@10.1.1.1
$ ssh user1@10.1.1.1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음과 같습니다.
-
user1은 SSH 서버의 사용자입니다. -
10.1.1.1은 SSH 서버의 IP 주소입니다.
-
SSH 서버에서
sshd_config파일의 내용을 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 192.0.2.0/24 서브넷에서 root로 서버에 연결할 수 있는지 확인합니다.IP 주소를 확인합니다.
hostname -I 192.0.2.1
$ hostname -I 192.0.2.1Copy to Clipboard Copied! Toggle word wrap Toggle overflow IP 주소가
192.0.2.1 -범위 내에 있는 경우 서버에 연결할 수 있습니다.192.0.2.254root로 서버에 연결합니다 :ssh root@10.1.1.1
$ ssh root@10.1.1.1Copy to Clipboard Copied! Toggle word wrap Toggle overflow