passwd — 비밀번호 관리
Linux / 사용자 및 보안 관리 / passwd.html
💬 "passwd 명령어"
passwd는 비밀번호를 변경하거나 잠급니다. 서비스 계정은 로그인 자체를 막아 관리합니다.
만료(-e)를 쓰면 다음 로그인 시 변경을 강제합니다.
- 개념: 계정 비밀번호를 설정/변경/잠금합니다.
- 본인 실행: 자기 비밀번호를 바꿉니다.
- root 실행: 다른 계정 비밀번호를 바꿉니다.
- 상태(-S): 비밀번호 잠금 여부와 만료 정보를 봅니다.
자주 쓰는 옵션
| 옵션 | 설명 |
|---|---|
-S <사용자> | 비밀번호 상태 확인 |
-l / -u | 계정 비밀번호 잠금/해제 |
-e | 다음 로그인 시 변경을 강제 |
-d | 비밀번호 삭제(로그인 불가 상태로) |
필수 명령어 조합 3가지
passwd -S myapp— 계정 잠금 상태 확인passwd -l myapp— 서비스 계정 잠금passwd -e deploy— 배포 계정에 다음 로그인 시 변경 강제
💬 "개발 서버에서 미리 검증하는 방식 알려줘"
실제 운영 중인 서버에서 자주 만나는 상황을 순서대로 정리했습니다.
1단계 · 상태 확인
잠금 여부와 마지막 변경일을 봅니다.
passwd -S deploy
2단계 · 변경/잠금
용도에 맞게 비밀번호를 바꾸거나 잠급니다.
passwd -l myapp
3단계 · 검증
상태를 다시 확인합니다.
passwd -S myapp
실무에서는 이렇게 씁니다
1. 서비스 계정 잠금
상황 — 서비스 계정에 로그인 통로를 없애야 합니다.
passwd -l myapp && passwd -S myapp
결과 — 상태가 L(locked)로 표시되어 로그인이 차단됩니다.
포인트 — 셸을 nologin으로 둔 것과 함께 이중으로 막습니다.
2. 초기 비밀번호 강제 변경
상황 — 신규 입사자에게 임시 비밀번호를 주고 변경을 강제합니다.
passwd deploy && passwd -e deploy
결과 — 임시 비밀번호로 로그인하면 즉시 변경 화면이 뜹니다.
포인트 — 임시 비밀번호는 안전한 경로로 전달하고 변경을 반드시 유도합니다.
주의할 점
- 비밀번호는 명령줄에 직접 넣지 않습니다(히스토리 노출).
- 서비스 계정은 키 인증만 쓰고 비밀번호 로그인을 막습니다.
- -d는 비밀번호를 삭제해 로그인을 막지만 설정에 따라 위험할 수 있습니다.
실제 실행 화면
비밀번호 상태를 확인하고 서비스 계정을 잠근 결과입니다.

실제 운영 중인 서버
이 문서는 화면 표시용 가상 디렉터리의 항목입니다. 실제 서버 파일시스템과 연결되지 않으며, 파일 실행이나 시스템 명령을 수행하지 않습니다.