Computer >> 컴퓨터 >  >> 네트워킹 >> VPN

리눅스 rp_filter 변경 방법 – VPN 환경에서 역방향 경로 필터링 완벽 이해

역방향 경로 필터링(Reverse Path Filtering)은 비대칭 라우팅(asymmetric routing)을 차단하기 위해 사용되는 대표적인 보안 메커니즘입니다. 이 기능이 활성화되면 한 인터페이스로 들어온 패킷은 다른 인터페이스로 빠져나갈 수 없으며, 리눅스 커널에는 이러한 역방향 경로 필터링 기능이 기본적으로 내장되어 있습니다.

역방향 경로 필터링의 작동 원리

리눅스 커널은 IPv4 환경에서 IP 스푸핑(spoofing) 공격을 억제하기 위해 rp_filter와 역방향 경로 필터링 메커니즘을 함께 활용합니다. 인터넷은 본질적으로 위험한 공간이며, 공격자들은 위조된 출발지 IP 주소로 악성 트래픽을 전송하는 경우가 많습니다. 역방향 경로 필터링은 들어오는 패킷의 출발지 주소가 해당 인터페이스로 실제 도달 가능한 경로인지 검증함으로써, 이러한 스푸핑 공격의 상당 부분을 사전에 차단합니다.

리눅스에서 현재 rp_filter 값 확인 및 변경 방법

현재 시스템에 설정된 값을 확인하려면 아래 명령어를 사용할 수 있습니다.

cat /proc/sys/net/ipv4/conf/all/rp_filter
sysctl net.ipv4.conf.all.rp_filter

rp_filter 값은 다음 세 가지로 설정할 수 있습니다.

  • 0 : 역방향 경로 필터링 비활성화
  • 1 : 엄격 모드(Strict Mode) – RFC 3704 권장 방식
  • 2 : 느슨 모드(Loose Mode)

각 네트워크 인터페이스마다 개별적인 rp_filter 파일이 존재하므로, 특정 인터페이스에만 역방향 경로 필터링을 적용하고 싶다면 해당 인터페이스의 설정 파일만 수정하면 됩니다. VPN 터널 인터페이스(tun/tap)처럼 비대칭 라우팅이 발생하기 쉬운 환경에서는 이 값을 조정하는 것이 유용합니다.

net.ipv4.conf.default.rp_filter의 의미

/proc/sys/net/ipv4/conf/default/rp_filter 값은 새로운 네트워크 인터페이스가 생성될 때 적용되는 기본값입니다. 즉, 앞으로 추가될 모든 인터페이스에 역방향 경로 필터링이 자동으로 적용되도록 미리 정해두는 용도입니다. 다만 이미 존재하는 인터페이스에는 영향을 주지 않으므로, 기존 인터페이스에 대해서는 개별적으로 설정을 변경해야 합니다.

VPN 클라이언트란 무엇인가?

VPN 클라이언트는 사용자가 VPN 서버와 안전한 연결을 맺을 수 있도록 돕는 소프트웨어입니다. 일부 VPN 클라이언트는 시스템 시작 시 자동으로 실행되며, 다른 클라이언트들은 사용자가 직접 서버를 선택하고 연결을 관리할 수 있는 프런트엔드 인터페이스(GUI)를 제공합니다.

VPN이 필요한 이유

VPN은 온라인 활동을 외부로부터 숨겨주는 강력한 도구입니다. 집이나 회사 등 어떤 Wi-Fi 네트워크에 접속하더라도 실제 IP 주소, 검색 기록, 개인 정보를 보호해 줍니다. 특히 카페나 공항 같은 공용 Wi-Fi 환경에서는 해킹이나 도청 위험이 크기 때문에 VPN 사용이 더욱 중요합니다.

VPN의 작동 원리

VPN(Virtual Private Network, 가상 사설망)은 컴퓨터와 인터넷 사이에 암호화된 보안 연결을 구축하는 애플리케이션입니다. 공용 네트워크를 통해서도 마치 전용 회선처럼 안전하게 데이터를 주고받을 수 있는 '프라이버시 터널'을 만들어 주며, 이 터널을 지나는 모든 데이터는 암호화되므로 제3자가 내용을 엿보거나 변조하기 어렵습니다.

유니캐스트 RPF(Unicast Reverse Path Forwarding)의 목적

유니캐스트 RPF는 위조된 출발지 주소를 가진 패킷의 전달을 차단하는 메커니즘입니다. 라우팅 테이블을 조회하여 해당 IP 패킷의 출발지 주소로 되돌아가는 경로가 존재하는지, 그리고 그 경로가 패킷이 들어온 인터페이스와 일치하는지를 확인합니다. 일치하지 않으면 해당 패킷은 전달되지 않고 폐기(drop)됩니다.

멀티캐스트 라우팅에서의 RPF 검사

멀티캐스트 VPN 환경에서는 라우터 간 루프(loop) 발생을 방지하기 위해 각 멀티캐스트 라우터가 수신한 트래픽의 출발지 IP 주소에 대해 역방향 경로 전달(RPF) 검사를 수행합니다. RPF 검사를 통과하지 못한 패킷은 전달되지 않고 폐기되며, 이를 통해 불필요한 패킷 복제와 라우팅 루프를 예방할 수 있습니다.

게이트웨이에서의 역방향 경로 필터링

역방향 경로 필터링은 들어오는 패킷의 출발지 주소 범위를 검사하여 유효하지 않은 연결로 판단되는 패킷을 거부하는 보안 제어 기능입니다. 이 옵션을 활성화하면 DataPower Gateway와 같은 게이트웨이 장비는 소스 라우팅(source routing)을 비활성화하고 해당 패킷들을 무시하여, 내부 네트워크를 위조 트래픽으로부터 보호합니다.