일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- AWS S3
- AWS
- ADFS 이중화
- 도커
- vCenter Syslog collector
- MSSQL 2012
- ADFS proxy
- Active Directory
- Active Directory Migration
- Exchange 2003
- vCenter
- AWS EBS
- AD Migration
- 하이퍼바이저
- ELK
- Exchange Server
- mongodb 설치
- vmware vsphere
- ansible
- AWS EFS
- Application Gateway
- ADFS Traffic Manager
- awx
- ADFS 구성 방법 및 이중화
- ELK 설치
- Azure
- ADFS SSO
- Docker
- vSphere
- Kubernetes
- Today
- Total
practice makes perfect
Ansible 을 통한 계정 추가 및 패스워드 변경 본문
Ansible 을 통한 계정 추가 및 패스워드 변경
- 관리자는 특정 기간마다 보안을 위해 계정추가 및 패스워드를 변경한다
- 서버가 몇대 안된다면 굳이 상관없지만 수십 또는 수백대 서버에서 작업이 필요할 수 있다
- Ansible을 통하여 좀 더 편하게 작업해 보자
[사용법]
# 계정추가테스트 진행
[root@ip-10-10-10-183 ansible]# ansible all -m user -a "name=myunghoon" -u ec2-user
testserver | FAILED! => {
"changed": false,
"cmd": "/usr/sbin/useradd -m myunghoon",
"msg": "[Errno 13] Permission denied",
"rc": 13
}
※ 위 내용은 현재 호스트 접근 계정인 ec2-user에 대한 sudo 권한이 없기 때문에 Error 발생
# vim ansible.cfg 파일 수정
[privilege_escalation]
become=True
become_method=sudo
become_user=root
#become_ask_pass=False
# 다시 계정 생성 테스트
[root@ip-10-10-10-183 ansible]# ansible all -m user -a "name=myunghoon" -u ec2-user
testserver | SUCCESS => {
"changed": true,
"comment": "",
"create_home": true,
"group": 501,
"home": "/home/myunghoon",
"name": "myunghoon",
"shell": "/bin/bash",
"state": "present",
"system": false,
"uid": 501
}
# 해당 호스트에 실제로 생성 되었는지 확인
[root@ip-10-10-30-5 ~]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
saslauth:x:499:76:"Saslauthd user":/var/empty/saslauth:/sbin/nologin
mailnull:x:47:47::/var/spool/mqueue:/sbin/nologin
smmsp:x:51:51::/var/spool/mqueue:/sbin/nologin
rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin
nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
ec2-user:x:500:500:EC2 Default User:/home/ec2-user:/bin/bash
tomcat:x:91:91:Apache Tomcat:/usr/share/tomcat8:/sbin/nologin
apache:x:48:48:Apache:/var/www:/sbin/nologin
chrony:x:498:497::/var/lib/chrony:/sbin/nologin
myunghoon:x:501:501::/home/myunghoon:/bin/bash
# ansible 서버에서도 확인 가능
[root@ip-10-10-10-183 ansible]# ansible all -m shell -a "tail -n 1 /etc/passwd" -u ec2-user
testserver | SUCCESS | rc=0 >>
myunghoon:x:501:501::/home/myunghoon:/bin/bash
# 패스워드 추가 및 변경
[root@ip-10-10-10-183 ansible]# ansible all -m user -a "name=myunghoon update_password=always password={{ 'passwordda' | password_hash('sha512') }}" -u ec2-user
testserver | SUCCESS => {
"append": false,
"changed": true,
"comment": "",
"group": 501,
"home": "/home/myunghoon",
"move_home": false,
"name": "myunghoon",
"password": "NOT_LOGGING_PASSWORD",
"shell": "/bin/bash",
"state": "present",
"uid": 501
}
'Ansible' 카테고리의 다른 글
AWX Module 확인 (0) | 2024.05.06 |
---|---|
AWX(Tower) 관리 작업 (0) | 2024.05.06 |
Ansible Handlers (0) | 2024.05.06 |
Ansible Vault (1) | 2020.12.13 |
Ansible 란 ? (0) | 2019.10.12 |