IT
리눅스에서 패스워드 정책(password policy)
리눅스에서 패스워드 정책(password policy) 을 설정하는 것은 보안상 매우 중요해. 일반적으로 사용자의 패스워드 복잡성, 길이, 만료 기간 등을 설정해서 강력한 보안을 유지할 수 있어. 주요 설정 방법은 다음과 같아.
1. 패스워드 복잡성 및 품질 설정 (PAM 사용)
리눅스는 PAM(Pluggable Authentication Modules)을 사용해서 패스워드 정책을 설정해. 보통 다음 파일을 수정하게 돼:
/etc/pam.d/common-password
(Debian/Ubuntu 계열)
/etc/pam.d/system-auth
(Red Hat/CentOS/Fedora 계열)
password requisite pam_pwquality.so retry=3 minlen=12 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
옵션 설명:
-
retry=3 : 비밀번호 설정 실패 시 3번 재시도 가능
-
minlen=12 : 최소 길이 12자
-
ucredit=-1 : 최소 1개의 대문자 필요
-
lcredit=-1 : 최소 1개의 소문자 필요
-
dcredit=-1 : 최소 1개의 숫자 필요
-
ocredit=-1 : 최소 1개의 특수문자 필요
위 설정은 libpam-pwquality 패키지가 설치되어 있어야 작동함.
설치 명령 예:
sudo apt install libpam-pwquality # Ubuntu/Debian
sudo dnf install pam_pwquality # Fedora
sudo yum install libpwquality # CentOS/RHEL
2. 비밀번호 만료 정책 설정
명령어:
chage
chage 명령을 사용하면 사용자의 패스워드 만료 주기 등을 설정할 수 있어.
sudo chage -M 90 -m 7 -W 14 username
옵션 설명:
-
-M 90 : 최대 사용 기간 90일
-
-m 7 : 최소 7일은 비밀번호 변경 불가
-
-W 14 : 만료 14일 전에 경고
모든 사용자의 기본 정책 설정 (CentOS/RHEL 계열)
파일: /etc/login.defs
PASS_MAX_DAYS 90
PASS_MIN_DAYS 7
PASS_WARN_AGE 14
3. 패스워드 기록(이전 비밀번호 재사용 금지)
password sufficient pam_unix.so remember=5
-
마지막 5개의 비밀번호를 기억해서 재사용 방지
-
/etc/security/opasswd 파일에 저장됨
위 항목도 /etc/pam.d/common-password 혹은 system-auth에 추가해야 함
4. 사용자 비밀번호 변경 명령
passwd username
-
현재 사용자의 비밀번호 변경 시는 passwd 단독으로 사용
-
root 권한으로 다른 사용자의 비밀번호도 변경 가능
5. 강제로 비밀번호 만료 시키기
sudo chage -d 0 username
-
다음 로그인 시 비밀번호를 반드시 변경해야 함
예시: 보안 정책을 종합적으로 적용한 PAM 설정 줄
password requisite pam_pwquality.so retry=3 minlen=12 ucredit=-1 lcredit=-1 dcredit=-1 ocredit=-1
password sufficient pam_unix.so remember=5 use_authtok sha512 shadow
필요하다면 기업/기관 수준에서 CIS Benchmark 기준에 맞춰 설정할 수도 있어. 더 고급 설정, 예를 들어 LDAP/AD 연동 환경이라면 따로 설명해줄게.
어떤 배포판을 사용하는지 알려주면 더 구체적인 설정 방법도 알려줄 수 있어.
댓글
아직 댓글이 없습니다.
로그인 후 댓글을 남길 수 있습니다.