Ansible SSH-복사 ID

Ansible Ssh Bogsa Id



Ansible은 여러 시스템에서 구성 및 애플리케이션 배포 관리를 단순화하는 무료 오픈 소스 자동화 도구입니다.

Ansible은 선언적 언어를 사용하여 원하는 시스템 상태를 설명하고 해당 상태를 달성하는 데 필요한 작업을 자동으로 처리합니다.

Ansible은 SSH를 기본 연결 방법으로 사용하여 대상 머신에 연결합니다. SSH는 Ansible 제어 노드와 대상 호스트 간의 안전하고 암호화된 통신 채널을 제공합니다.







일반적으로 대상 호스트에 대한 SSH 키 기반 인증을 구성하는 가장 일반적인 방법은 ssh-copy-id 명령입니다. 이 명령은 제어 노드의 공개 키를 대상 호스트의 'authorized_keys' 파일에 복사합니다.



그러나 처음으로 시스템을 구성하는 경우 플레이북에서 이를 수행하려면 Ansible이 필요할 수 있습니다. 이것이 Ansible 커뮤니티가 구출하는 곳입니다.



Ansible 커뮤니티에서는 비밀번호 없는 SSH 인증을 위해 시스템에 권한을 부여할 수 있는 ssh_id_copy 역할에 액세스할 수 있습니다.





이 역할은 원격 시스템에서 Ansible 인벤토리 파일을 생성할 수 있는 원격 시스템의 SSH 키 설정을 처리합니다. 그런 다음 원격 시스템에 대해 Ansible 플레이북을 빠르게 호출할 수 있습니다.

Ansible Ssh_Copy_Id 역할

역할에는 Ansible이 원격 호스트에서 SSH 키를 구성할 수 있도록 하는 변수가 있습니다. 이러한 변수에는 다음이 포함됩니다.



호스트 이름 – 연결할 원격 시스템(FQDN 또는 IP)을 정의합니다.

사용자 이름 – 원격 시스템에 접속하기 위한 사용자 이름을 지정합니다.

비밀번호 – 원격 시스템에 접속하기 위한 사용자 이름의 비밀번호를 정의합니다.

ssh_public_key – 원격 호스트에 설정할 공개키 파일의 절대 경로를 정의합니다.

포트 – SSH 포트를 정의합니다.

Ssh_Copy_Id 역할 설치

주의: 우리는 커뮤니티 중심 역할과 모듈의 유효성과 보안을 제공할 수 없습니다. 프로덕션 및 실제 시스템에서 사용하기 전에 역할/모듈의 작동을 감사하고 확인하십시오. 이 게시물에 설명된 단계를 수행할 때 보안이 보장되지 않습니다.

언급한 대로 ssh_copy_id는 Ryan이 제공하는 커뮤니티 제공 역할입니다. 저장소에 대한 링크는 다음과 같이 제공됩니다.

https://github.com/ryankwilliams/ansible-ssh-copy-id

사용하기 전에 다음 명령을 실행하여 설치되었는지 확인해야 합니다.

$ 앤서블 갤럭시 설치하다 rywillia.ssh-복사 ID

사용 예

일단 설치되면 다음과 같이 플레이북에서 역할을 사용할 수 있습니다.

---
- 이름
: 원격 시스템에서 비밀번호 없는 SSH 인증 구성
호스트
: 로컬호스트
~이 되다
:
역할
:
- 역할
: 라이언크윌리엄스.ssh_copy_id
누구의
:
호스트 이름
: 172.168.112.23
사용자 이름
: 우분투
비밀번호
: 비밀번호
ssh_public_key
: /home/debian12/.ssh/id_rsa.pub
SSH_포트
: 22

이전 예제 플레이북에서는 역할을 사용하여 원격 시스템에 정의된 사용자인 비밀번호 없는 SSH 인증을 설정하는 방법을 보여줍니다.

결론

이 입문 튜토리얼에서는 커뮤니티에서 제공하는 역할 및 모듈을 활용하여 Ansible 플레이북을 사용하여 원격 호스트에서 비밀번호 없는 SSH 인증을 구성하는 방법을 배웠습니다.