> Posts > 보기

16. 서버 보안 점검 체크리스트(포트, 사용자, 권한)

리눅스 서버를 구축한 후 가장 먼저 해야 할 일은 무엇일까요?

기능 구현보다 더 중요한 것은 바로 외부의 위협으로부터 시스템을 보호하는 보안 설정입니다.

실무 현장에서는 한순간의 방심으로 인해 데이터 유출이나 랜섬웨어 감염 등의 심각한 문제가 발생할 수 있습니다.

오늘은 #우분투서버보안 강화를 위해 반드시 점검해야 할 포트, 사용자 계정, 파일 권한 관리법을 실무 명령어 중심으로 상세히 알아보겠습니다.

1. 열린 포트 점검 및 네트워크 인터페이스 확인

1. 열린 포트 점검 및 네트워크 인터페이스 확인

보안의 시작은 공격자가 들어올 수 있는 통로인 '포트'를 관리하는 것입니다.

불필요하게 열려 있는 포트는 그 자체로 잠재적인 취약점이 됩니다.

#리눅스보안점검 과정에서 가장 먼저 사용하는 명령어는 netstat 또는 ss입니다.

sudo ss -tulpn 명령어를 실행하면 현재 시스템에서 리스닝(Listening) 상태인 포트와 해당 포트를 사용하는 프로세스를 한눈에 확인할 수 있습니다.

여기서 인지하지 못한 서비스가 구동 중이라면 systemctl stop [서비스명]으로 즉시 중단하고 필요 없는 경우 삭제해야 합니다.

또한, #서버권한관리 측면에서 특정 IP 대역에서만 서비스에 접근할 수 있도록 방화벽(UFW)을 설정하는 것이 필수적입니다.

sudo ufw allow 22/tcp처럼 필요한 포트만 개방하고 나머지는 기본적으로 차단(Deny)하는 정책을 유지해야 합니다.

#실무리눅스운영 환경에서는 주기적으로 외부 스캐닝 도구를 사용해 우리 서버가 어떻게 노출되고 있는지 교차 검증하는 습관이 필요합니다.

2. 사용자 계정 및 로그인 보안 강화

서버에 접속할 수 있는 권한을 가진 '사용자'를 관리하는 것은 내부 보안의 핵심입니다.

오랫동안 사용하지 않는 계정이나 퇴사자의 계정이 방치되어 있다면 이는 매우 위험한 요소입니다.

#우분투서버보안 가이드에 따라 /etc/passwd 파일을 열어 불필요한 시스템 계정이 있는지 확인하십시오.

실제 로그인이 필요 없는 서비스 계정은 쉘 권한을 /usr/sbin/nologin으로 변경하여 직접 접속을 차단해야 합니다.

또한, #리눅스보안점검 시 last 명령어를 통해 최근 로그인 기록을 살피고 미인가 지역에서의 접속 시도가 있었는지 파악해야 합니다.

비밀번호 정책 또한 중요합니다.

/etc/login.defs 파일에서 비밀번호 만료일, 최소 길이 등을 설정하여 #사용자계정관리 수준을 높일 수 있습니다.

가장 권장되는 방식은 비밀번호 대신 SSH 키 기반 인증을 사용하는 것이며, root 계정의 직접 로그인은 SSH 설정 파일에서 PermitRootLogin no로 반드시 제한해야 합니다.

3. 파일 시스템 및 디렉토리 권한 최적화

리눅스는 모든 것이 파일로 이루어져 있습니다.

따라서 파일과 디렉토리에 부여된 권한을 적절히 통제하는 것이 #서버권한관리의 본질입니다.

실무에서는 find 명령어를 활용해 보안 취약점을 찾습니다.

예를 들어, 누구나 수정 가능한 파일인 'World-Writable' 파일을 찾으려면 find / -perm -2 -ls 명령을 사용합니다.

이런 파일들은 악성 스크립트 삽입의 타겟이 되기 쉬우므로 발견 즉시 권한을 수정해야 합니다.

#리눅스보안점검 항목 중 하나인 SUID/SGID 설정 파일도 주의 깊게 봐야 합니다.

find / -perm /4000 명령으로 일반 사용자가 관리자 권한으로 실행할 수 있는 파일을 찾아내고, 꼭 필요한 경우가 아니라면 해당 비트를 제거하는 것이 좋습니다.

#실무리눅스운영 시 데이터 디렉토리는 최소 권한 원칙(Principle of Least Privilege)에 따라 실행 권한을 제거하거나 소유주를 엄격히 제한하여 관리해야 합니다.

4. 실무 필수 보안 명령어 및 로그 분석

보안 점검은 일회성으로 끝나서는 안 됩니다.

지속적인 모니터링과 로그 분석이 병행되어야 완벽한 #우분투서버보안 시스템을 구축할 수 있습니다.

  • sudo cat /var/log/auth.log: 사용자 인증 관련 로그를 실시간으로 확인하여 무차별 대입 공격(Brute Force) 징후를 포착합니다.

  • sudo ufw status: 방화벽 상태를 수시로 체크하여 정책이 올바르게 적용되고 있는지 확인합니다.

  • ls -al /etc/shadow: 민감한 비밀번호 해시 정보가 담긴 파일의 권한이 600인지, 소유자가 root인지 주기적으로 확인하여 #서버권한관리 상태를 점검합니다.

이러한 명령어들은 #실무리눅스운영의 기본이며, 자동화 스크립트를 만들어 정기적으로 레포트를 생성하는 것이 좋습니다.

로그 데이터가 너무 방대하다면 grep 명령어를 조합하여 특정 키워드(예: 'Failed password')만 추출해 효율적인 #리눅스보안점검을 수행할 수 있습니다.

5. 취약점 스캐닝 및 업데이트 자동화

마지막으로 OS 자체의 취약점을 해결하기 위한 패치 관리가 필요합니다.

우분투에서는 unattended-upgrades 패키지를 사용하여 보안 업데이트를 자동화할 수 있습니다.

#우분투서버보안 전략 중 하나로, lynis와 같은 전문적인 보안 감사 도구를 사용하는 것도 추천합니다.

sudo lynis audit system 명령 한 번으로 시스템 전체의 보안 점검 체크리스트를 실행하고 개선 사항을 점검표 형태로 받을 수 있습니다.

이는 관리자가 놓치기 쉬운 #사용자계정관리 오류나 미비한 #서버권한관리 항목을 짚어주는 훌륭한 비서 역할을 합니다.

보안은 기술적인 설정도 중요하지만 관리자의 보안 의식이 가장 큰 비중을 차지합니다.

복잡한 설정보다 중요한 것은 기본 원칙을 꾸준히 실천하는 것입니다.

오늘 소개한 #리눅스보안점검 항목들을 바탕으로 여러분의 서버를 더욱 안전하게 운영하시길 바랍니다.


#우분투서버보안, #리눅스보안점검, #서버권한관리, #실무리눅스운영, #사용자계정관리, #포트점검, #SSH보안, #방화벽설정, #UFW사용법, #리눅스명령어, #서버운영가이드, #파일권한설정, #보안체크리스트, #시스템모니터링, #취약점분석



함께 보면 좋은 서비스

네이버 블로그 마케팅의 혁신! 이웃 관리부터 서이추, 공감, 답방까지 자동화로 관리하는 NTOPPRO를 만나보세요.

NTOPPRO 공식 홈페이지 방문하기


업무 효율을 높여주는 다양한 유틸리티와 자료가 필요하신가요? 루젠자료실에서 지금 바로 확인하세요.

루젠자료실 바로가기