[리눅스 보안] 리눅스 계정관리 - 사용자 Shell 점검
■ 대상 OS : SunOS, Linux, AIX, HP-UX
■ 취약점 개요
- 로그인이 필요 없는 계정을 이용해 시스템에 접근하여 사용자의 명령어를 해석하고 악용할 가능성이 있으므로, /bin/false *쉘(Shell)을 부여해 로그인을 금지함
*쉘(Shell) : 대화형 사용자 인터페이스로써, 운영체제(OS) 가장 외곽계층에 존재하여 사용자의 명령어를 이해하고 실행함
■ 보안대책
- 양호 : 로그인이 필요하지 않은 계정에 /bin/false(nologin) 쉘이 부여되어 있는 경우
- 취약 : 로그인이 필요하지 않은 계정에 /bin/false(nologin) 쉘이 부여되지 않은 경우
■ 조치방법
- 로그인이 필요하지 않은 계정에 대해 /bin/false(nologin) 쉘 부여
■ 보안설정 방법
◆ OS별 점검 파일 위치 및 점검 방법
- SunOS, Linux, AIX, HP-UX
#cat /etc/passwd | egrep
"^daemon|^bin|^sys|^adm|^listen|^nobody|^nobody4|^noaccess|^diag|^listen|^operator|^games|^gopher" | grep -v "admin"
※ 시스템에 불필요한 계정을 확인한 후 /bin/false(nologin) 쉘이 부여되어 있지 않은 경우 아래의 보안설정 방법에 따라 설정을 변경
(※ 불필요한 계정은 시스템 용도에 따라 차이가 있음)
■ SunOS, Linux, AIX, HP-UX
1. vi 편집기를 이용하여 "/etc/passwd" 파일을 연 후
2. 로그인 쉘 부분인 계정 맨 마지막에 /bin/false(nologin) 부여 및 변경
(수정 전) daemon:x:1:1::/:/sbin/ksh
(수정 후) daemon:x:1:1::/:/bin/false 또는, daemon:x:1:1::/:/sbin/nologin
■ 일반적으로 로그인이 불필요한 계정
- daemon, bin, sys, adm, listen, nobody, nobody4, noaccess, diag, operator, games, gopher 등 일반적으로 UID 100 이하 6000 이상의 시스템 계정 해당
※ 문의 사항은 메일 : jyuhm@sntkor.com 이나 070-8611-4853
'Infra > 리눅스 서버' 카테고리의 다른 글
[리눅스 보안] 리눅스 파일 및 디렉토리 관리 - root 홈, 패스 디렉토리 권한 및 패스 설정 (0) | 2016.12.26 |
---|---|
[리눅스 보안] 리눅스 계정관리 - Session Timeout 설정 (2) | 2016.12.23 |
[리눅스 보안] 리눅스 계정관리 - 동일한 UID 금지 (0) | 2016.12.22 |
[리눅스 보안] 리눅스 계정관리 - 계정이 존재하지 않는 GID 금지 (0) | 2016.12.19 |
[리눅스 보안] 리눅스 계정관리 - 관리자 그룹에 최소한의 계정 포함 (0) | 2016.12.15 |