리눅스 chpasswd 패스워드 변경
리눅스/OS 일반2017. 10. 24. 09:58
반응형
그동안 리눅스 서버는 Redhat 계열만 운영해 왔고, passwd 커맨드에 --stdin 옵션이 있었기 때문에 root 패스워드 대량 변경이나 자동화 스크립트 구현에 아무런 불편함이 없었다.
예제) echo 'new password' | passwd --stdin root
하지만 이번에 우분투(Debian 계열) 서버를 만져보면서 passwd 커맨드에 --stdin 옵션이 없다는 사실을 알고 나서는 매우 당혹스러웠다. 그런데 댓글로 chpasswd 커맨드를 알려주신 분이 계셔서 다시금 희망을 찾게 되었다.
chpasswd 커맨드는 Standard Input을 패스워드로 입력받을 수 있기 때문에 보안상 취약할 수도 있지만, 사실 root 권한을 가진 서버관리자 입장에서는 매우 편리하다.
다음은 Standard Input을 활용한 몇가지 예제이다. '계정:새로운패스워드' 형식으로 입력하면 된다.
root, snoopy, test01 사용자의 패스워드를 1234로 변경해 보겠다.
1. 그냥 키보드로 입력
chpasswd
root:1234
snoopy:1234
test01:1234
root:1234
snoopy:1234
test01:1234
입력 종료는 Ctrl + D 누르면 된다.
2. echo와 파이프 활용
echo 'root:1234' | chpasswd
echo 'snoopy:1234' | chpasswd
echo 'test01:1234' | chpasswd
echo 'snoopy:1234' | chpasswd
echo 'test01:1234' | chpasswd
가독성은 좋지 않으나 echo에 -e 옵션을 주고 \n으로 개행 처리하여 한 줄로 할 수도 있다.
echo -e 'root:1234\nsnoopy:1234\ntest01:1234' | chpasswd
3. 텍스트 파일로부터 입력
미리 패스워드를 텍스트 파일에 적어놓고
password.txt
root:1234
snoopy:1234
test01:1234
snoopy:1234
test01:1234
아래와 같이 처리하면 되겠다.
cat password.txt | chpasswd
또는
chpasswd < password.txt
출처: http://snoopybox.co.kr/1713 [snoopybox]
반응형
'리눅스 > OS 일반' 카테고리의 다른 글
export 를 이용한 telnet 명령어 일괄 처리 (0) | 2018.01.29 |
---|---|
yum 패키지 설치 및 업데이트 시 'Transaction Check Error:' 해결방법 (0) | 2017.11.20 |
우분투 커널 소스 컴파일 (0) | 2017.10.23 |
samba 서버 마운트할 때 write-protected 에러 (0) | 2017.07.28 |
[cifs 마운트 에러] CIFS VFS: Send error in SessSetup = -22 (0) | 2017.07.28 |
댓글()