/etc/shadow
내 주 서버의 , /etc/passwd
, /etc/gshadow
및 을 동기화할 수 있는 방법이 있습니까 /etc/group
?
userdel
사용자가 1000명이 넘는데 이들을 순환하는 것이 번거롭습니다 useradd
.
이 파일들을 개인 저장소에 넣고 wget
. /etc/passwd
및 의 내용을 바꾸는 /etc/group
것은 가능하지만 함께 제공되면 /etc/shadow
공백 /etc/shadow
으로 표시되고 시스템이 손상됩니다.
가능한 한 LDAP나 기타 제3자를 사용하고 싶지 않습니다. Debian 9를 사용하여 LDAP 튜토리얼을 검색해 보았지만 오래된 튜토리얼이 표시되고 어떻게 작동하는지조차 모릅니다. 내가 아는 것은 adduser
슬레이브 서버에 인증하려면 시스템에 액세스해야 한다는 것뿐입니다.
네 개의 파일을 대체하는 watch
명령이 포함된 command를 사용하여 쉘 스크립트를 실행하고 있습니다 .wget
답변1
한 가지 옵션은 다음과 같습니다.앤세이블[1]이 파일을 사용할 수 있도록 설정주인그리고마디. 나는 배우고있다안시푸르최근에는 지금까지 배운 내용을 적용하고 있습니다.
당신이 가지고 있다고 말해주인, 그리고Node_1..Node_n그리고주인최신 문서가 있습니다.
물론 설치를 하셔야 합니다안시푸르당신의주인노드에 SSH로 접속할 수 있는 것주인.
먼저 다음과 같은 호스트 파일을 만듭니다.ansible_host다음과 같습니다. [원하는 만큼 많은 노드를 추가하고 자신의 호스트 이름을 사용할 수 있음을 나타내려면 타원을 사용하십시오.]
[sync_nodes]
node_1.example.local
node_2.example.local
...
그런 다음 다음과 같은 파일을 만듭니다.비밀번호.yml 동기화, 좋다:
---
- hosts: sync_nodes
tasks:
- name: Copy file from master to {{ item }}
include_tasks: copy_tasks.yml
with_items:
- "{{ groups['sync_nodes'] }}"
그런 다음 copy_tasks.yml에서:
---
- name: Copy /etc/passwd
copy: src=/etc/passwd dest=/etc/passwd
- name: Copy /etc/passwd
copy: src=/etc/group dest=/etc/groups
그런 다음 명령 프롬프트에서 다음을 수행합니다.
ansible-playbook -i ansible_hosts ./sync_pw.yml
주의:
- 모든 노드에 대해 sudo 권한이 필요합니다. [MODULE FAILURE 오류의 영향을 받음]
- Python은 원격으로 존재해야 합니다.