ansible을 사용하여 sudoers 파일을 수정하는 방법은 무엇입니까?

ansible을 사용하여 sudoers 파일을 수정하는 방법은 무엇입니까?

우리(10개 서버)에는 sudoers 파일이 있습니다 /etc/sudoers.d/ops. 때로는 이 파일에 여러 사용자와 Cmnd_Alias를 추가해야 하는 경우가 있습니다. Ansible 플레이북을 사용하여 이를 어떻게 자동화할 수 있나요?

우리의 sudoers 파일:

User_Alias     OPS_USERS = user1,user2,user3

Cmnd_Alias     OPS_CMD = /sbin/ifconfig, /usr/sbin/dmidecode

OPS_USERS      ALL = NOPASSWD:OPS_CMD  

답변1

개인적으로 저는 템플릿 모듈(협회). 다음과 유사한 템플릿을 준비하겠습니다.

User_Alias ​​​​OPS_USERS = {{ 사용자|조인(', ') }}

Cmnd_Alias ​​​​OPS_CMD = {{ command|join(', ') }}

OPS_USERS 모두 = NOPASSWD:OPS_CMD

변수에 다음과 같이 넣을 것입니다.

사용자:
  - "사용자 1"
  - "사용자 2"
  - "사용자 3"

주문하다:
  -"/sbin/ifconfig"
  -"/usr/sbin/dmidecode"

편집: 어쩌면 설명이 필요할 수도 있습니다.

템플릿에서는 문자열을 특정 구분 기호(','). 필터에 대한 자세한 내용을 확인할 수 있습니다.여기. 물론 연결될 문자열은 목록에서 가져옵니다.'사용자' 또는'주문하다' 스크립트의 변수 섹션에서 정의하세요.

관련 정보