IT인터넷

리눅스 서버 보안 취약점 점검 - IP 포워딩 비활성화 정리

hompicopi 2026. 6. 13. 00:32
반응형



리눅스 서버를 운영하다 보면 네트워크 기능 때문에 IP 포워딩이 활성화되는 경우가 있습니다.
하지만 일반 서버에서는 IP 포워딩 기능이 불필요한 경우가 많으며, 활성화 상태로 유지되면 보안상 취약점으로 분류됩니다.

특히 기업 보안 점검, ISMS, 서버 취약점 점검 항목에서 자주 확인하는 부분이라 실제 운영 서버에서도 반드시 체크하는 항목입니다.

---

IP 포워딩(IP Forwarding)이란?


IP 포워딩은 서버가 들어온 패킷을 다른 네트워크로 전달하는 기능입니다.

쉽게 말하면:

- 일반 서버 → 자기 자신만 통신
- IP 포워딩 서버 → 라우터처럼 패킷 전달 가능

즉 서버가 라우터 역할을 하게 됩니다.

보통 다음 상황에서 사용됩니다.

- VPN 서버
- NAT 서버
- 라우팅 서버
- 방화벽 장비
- Docker/Kubernetes 네트워크 구성

하지만 일반 웹서버, DB서버, 파일서버에서는 대부분 필요하지 않습니다.

---

취약점 점검 기준

양호 기준

- IP 포워딩 기능이 비활성화 상태인 경우

취약 기준

- IP 포워딩 기능이 활성화된 경우

---

리눅스에서 IP 포워딩 확인 방법

먼저 root 권한으로 접속합니다.

sudo su -

다음 명령어로 현재 상태를 확인합니다.

cat /proc/sys/net/ipv4/ip_forward

출력값이:

0

이면 안전한 상태입니다.

반대로:

1

이면 IP 포워딩이 활성화된 상태입니다.

추가로 Source Route 허용 여부도 함께 확인합니다.

cat /proc/sys/net/ipv4/conf/default/accept_source_route

이 값도 반드시 "0" 이어야 안전합니다.

---

취약한 이유

IP 포워딩이 활성화되면 서버가 네트워크 중간 전달 역할을 수행할 수 있게 됩니다.

이 상태에서는 다음과 같은 위험이 발생할 수 있습니다.

- 내부망 우회 통신 가능
- 패킷 우회 전달 가능
- 비인가 라우팅 발생 가능
- 침입 시 Pivot 서버로 악용 가능
- 네트워크 정책 우회 가능

실제 보안 점검에서도 불필요한 IP 포워딩 활성화는 높은 확률로 지적됩니다.

---

IP 포워딩 비활성화 방법

1. 즉시 적용

echo 0 > /proc/sys/net/ipv4/ip_forward

추가 설정:

echo 0 > /proc/sys/net/ipv4/conf/default/accept_source_route

---

2. 재부팅 후에도 유지되도록 설정

다음 파일을 수정합니다.

vi /etc/sysctl.conf

아래 내용을 추가합니다.

net.ipv4.ip_forward = 0
net.ipv4.conf.default.accept_source_route = 0

저장 후 적용합니다.

sysctl -p

---

실제 운영하면서 느낀 점

처음 서버 보안 점검할 때 가장 많이 놓치는 항목 중 하나가 바로 IP 포워딩이었습니다.

특히 다음 환경에서 자동 활성화되는 경우가 많았습니다.

- Docker 설치 서버
- Kubernetes 노드
- VPN 구성 서버
- 방화벽 테스트 서버

실제로 Docker 설치 후 확인해보면 "ip_forward=1" 로 바뀌는 경우가 꽤 많습니다.

그래서 운영 환경에서는:

- “정말 필요한 서버인지”
- “라우팅 기능이 필요한 서버인지”

를 먼저 확인하고 비활성화 여부를 결정하는 것이 중요합니다.

무조건 끄는 것이 아니라 필요한 서비스 영향도도 반드시 확인해야 합니다.

---

CentOS / Ubuntu 확인 명령어

CentOS

sysctl net.ipv4.ip_forward

Ubuntu

cat /etc/sysctl.conf | grep ip_forward

---

보안 점검 시 함께 확인하면 좋은 항목

IP 포워딩 점검 시 아래 항목도 함께 확인하면 좋습니다.

점검 항목| 설명
SSH 최신 버전| 원격 접속 보안
SNMP public 제거| 기본 커뮤니티 문자열 제거
Cron 권한 설정| 예약 작업 권한 점검
불필요 서비스 제거| 공격 표면 감소
방화벽 정책 확인| 접근 제어 강화

---

한눈에 요약

- 일반 서버는 IP 포워딩이 필요 없는 경우가 많음
- 값이 "0" 이면 안전
- 값이 "1" 이면 취약 가능성 존재
- "/etc/sysctl.conf" 수정으로 영구 적용 가능
- Docker/VPN 환경에서는 활성화 여부 반드시 확인 필요

---

자주 묻는 질문 FAQ

Q1. IP 포워딩을 무조건 꺼야 하나요?

아닙니다.
VPN, Docker, Kubernetes, 라우터 서버는 필요한 경우 활성화해야 합니다.

---

Q2. 값이 1이면 바로 위험한 건가요?

무조건 위험한 것은 아니지만 불필요하게 활성화된 경우 취약점으로 분류됩니다.

---

Q3. Docker 설치 후 왜 활성화되나요?

Docker 네트워크 브리지 기능 때문에 자동 활성화되는 경우가 많습니다.

---

Q4. sysctl.conf 수정 후 재부팅해야 하나요?

아니요.

sysctl -p

명령으로 즉시 적용 가능합니다.

---

Q5. 운영 서버에서 변경 전 주의사항은?

네트워크 서비스 영향도를 반드시 확인해야 합니다.

특히:

- VPN
- 컨테이너
- NAT
- 라우팅 서비스

사용 중이면 장애가 발생할 수 있습니다.

---

마무리

IP 포워딩은 작은 설정 같지만 서버 보안에서는 매우 자주 확인되는 핵심 항목입니다.

특히 리눅스 취약점 점검, ISMS, 보안 감사에서는 거의 필수로 확인하는 설정이라 운영 서버라면 꼭 한번 점검해보는 것을 추천합니다.

개인적으로도 실제 서버 점검할 때 Docker 때문에 활성화된 사례를 여러 번 봤기 때문에 신규 서버 구축 후 항상 먼저 확인하는 항목 중 하나입니다.

반응형