본문 바로가기
IT Infra & OS & Security/Unix

[보안] root 계정 원격 접속 제한

by 눈부셔™ 2017. 2. 14.
728x90

 [Unix-보안] root 계정 원격 접속 제한

 

관리자는 시스템 관리를 위해 원칙적으로 시스템 콘솔에서 직접 관리 작업을 수행

 

■ 취약점

    - 관리자가 원격에서 시스템 관리를 위해 telnet을 사용하는 경우, 스니핑에 의해 관리자의 비밀번호가 유출될 수 있는 위협이 존재

    - 다수의 관리자가 원격에서 하나의 관리자 ID를 사용하면 시스템에 문제 발생 시 책임 소재를 규명하기 어려움

 

 

■ 확인방법

 

$ grep PermitRootLogin /etc/ssh/sshd_config
#PermitRootLogin yes             관리자가 원격에서 시스템에 접근할 수 있음
#the setting of "PermitRootLogin without-password".

 

 

■ 조치방법

    - 시스템 관리 작업은 콘솔에서만 작업 가능하게 설정

    - 콘솔로만 작업하는 것이 불가능할 경우, 원격에서 안전하게 작업할 수 있게 ssh를 이용한 암호화 통신을 이용

    - ssh 사용 시, root 로 바로 접속할 수 없도록 설정

    - 관리자 아이디 공유는 방지

 

    1. 콘솔에서만 작업 가능하게 설정

# vi /etc/security/user
root:
ttys = /dev/console  ← 추가
※ 위와 같이 설정한 경우 원격에서 root 사용 불가능 (su 명령을 통한 사용자 전환도 불가능)

 

    2. 원격에서 반드시 root 사용이 필요한 경우에는 일반 사용자로 로그인하여 root 전환하도록 설정

# vi /etc/security/user
root:
sugroups =    ←  su 명령 사용 가능한 그룹 추가
rlogin = false  ←  원격에서 root로 접속할 수 없도록 추가

 

    3. root 비밀번호 노출 방지

        1) sudo 유틸리티 활용 (http://www.courtesan.com/sudo 에서 다운로드하여 설치 후, 사용)

        2) ssh를 설치하여 암호화 통신

 

    4. ssh 사용 시, root 로 바로 접속할 수 없도록 설정

PermitRootLogin 앞에 # 으로 주석처리 된 경우 허용으로 인식되므로 주의

# vi /etc/ssh/sshd_config
PermitRootLogin no
728x90