본문으로 건너뛰기

이지업 서버호스팅의 보안은 어떻게 관리하나요?

이지업 서버호스팅은 고객에게 최고 관리자(root) 권한이 제공되는 Rocky Linux 9 환경입니다. 따라서 서버 보안에 대한 책임은 전적으로 고객에게 있습니다. 이 가이드에서는 2단계 방화벽 설정과 기본 보안 수칙을 통해 서버를 안전하게 운영하는 방법을 안내합니다.


1. 사전 준비 사항

서버 보안 설정을 시작하기 전, 아래 항목을 미리 준비해야 합니다. 이는 원활한 서버 접속과 방화벽 규칙 설정을 위해 필수적입니다.

  • 서버 정보: 나의 서비스 관리에서 확인한 서버 IP 주소와 최고 관리자(root) 비밀번호
  • 내 PC의 IP 주소: 서버에 접속할 PC의 공인 IP 주소 (방화벽에서 내 IP를 허용하기 위해 필요)
  • SSH 접속 프로그램: PuTTY(윈도우), 터미널(macOS) 등 서버에 명령을 내리기 위한 프로그램

2. 단계별 진행 방법: 2중 방화벽 설정하기

이지업 서버호스팅은 두 단계의 방화벽을 제공합니다. 외부의 불필요한 접근을 효과적으로 차단하기 위해 두 방화벽을 모두 설정하는 것을 강력히 권장합니다.

① 1단계: 나의 서비스 관리에서 방화벽 설정하기

이 방화벽은 서버에 트래픽이 도달하기 전, 외부에서 먼저 차단하는 역할을 합니다. 가장 먼저 설정해야 할 중요한 보안 단계입니다.

  1. '나의 서비스 관리' 바로가기에 접속하여 방화벽 관리 메뉴로 이동합니다.
  2. INBOUND(외부에서 서버로 들어오는) 규칙을 설정합니다.
  3. SSH(22번 포트) 접속 규칙 설정 예시:
    • 가장 먼저, 현재 사용 중인 내 PC의 IP 주소에서만 SSH(22번 포트) 접속을 허용하는 규칙을 추가합니다.
    • 그다음, 모든 IP(0.0.0.0/0)에서 SSH(22번 포트)로 들어오는 접근을 차단하는 규칙을 추가합니다. 이렇게 하면 허용된 내 IP를 제외한 모든 곳에서의 원격 접속 시도를 막을 수 있습니다.
  4. 웹 서비스에 필요한 HTTP(80번 포트), HTTPS(443번 포트) 등 다른 필수 포트도 동일한 방식으로 규칙을 추가합니다.

② 2단계: 서버에 직접 방화벽(iptables) 설정하기

서버 내부에 설치된 리눅스 방화벽(iptables)을 통해 한 번 더 세밀하게 접근을 제어할 수 있습니다. SSH로 서버에 접속한 후 아래 명령어를 사용하세요.

  1. iptables 서비스 관리

    # iptables 서비스 시작 및 부팅 시 자동 실행 설정
    systemctl start iptables
    systemctl enable iptables
    
    # iptables 서비스 상태 확인
    systemctl status iptables
    
  2. 주요 규칙(Rule) 설정 명령어

    # 현재 설정된 모든 규칙 보기
    iptables -L -v
    
    # 특정 포트(예: HTTP 80번)에 대한 모든 접근 허용
    iptables -A INPUT -p tcp --dport 80 -j ACCEPT
    
    # 특정 IP 주소(예: 123.123.123.123)만 SSH(22번 포트) 접속 허용
    iptables -A INPUT -s 123.123.123.123 -p tcp --dport 22 -j ACCEPT
    
    # 설정된 규칙을 저장하여 재부팅 후에도 유지
    service iptables save
    
주의: iptables 규칙을 잘못 설정하면 정상적인 서비스는 물론, 본인의 IP까지 차단될 수 있습니다. 규칙을 추가할 때는 신중하게 확인 후 적용하세요.

3. 완료 확인 및 추가 보안 수칙

방화벽 규칙 확인

설정이 올바르게 적용되었는지 SSH 접속 상태에서 아래 명령어로 최종 확인합니다. 허용 및 차단 규칙이 의도한 대로 표시되는지 점검하세요.

iptables -L -n -v