본문 바로가기

개발/Infrastructure

pfSense 와 함께 인터넷 사용하기

반응형

(썸네일) pfSense와 함께 인터넷 사용하기

📡 pfSense 알아보기

pfSense는 오픈소스 방화벽 소프트웨어입니다. 데스크톱이 될 수도 있고, 서버 또는 VM 등 컴퓨터에 설치해서 사용하는 방화벽입니다. pfSense의 모든 기능을 쓰지는 않지만.. DHCP 서버, NAT 등 가정에서 쓰는 공유기 이상의 기능을 지원합니다.

제 경우 미니 PC를 구입하여(알리익스프레스에서 구매) pfSense를 올린 후 사용하고 있습니다.

 

[pfSense는 공식 문서]가 존재하고, 영어만 가능하다면 최고의 설명서입니다. 다만, 한국어 자료는 부족했고 2021년 5월부터 지금까지 겪었던 시행착오를 정리하고자 합니다. 보안 또는 네트워크와 관련된 전문적 지식을 가지고 쓰는 글이 아닙니다. 더 나은 방법이나 잘못된 지식이 있다면 댓글로 알려주세요! 🤣

 

시작하기 전에, 글을 쓰는 시점으로 pfSense 2.5.1 버전을 사용하고 있습니다. 구버전이나 이후 버전에서는 해당 글과 구성이 다를 수 있습니다.

1. 기존 공유기(AP)와 함께 사용하기

내장(외장) 안테나가 있으면 pfSense 와이파이 기능을 이용해 와이파이 공유기(Access Point; AP)를 대체할 수 있습니다. 다만 pfSense 와이파이 성능이 안 좋아 비추천한다는 의견이 많았고 저는 기존에 쓰던 공유기가 있기 때문에 재활용해서 사용하겠습니다.

별도 설정 필요없이 pfSense에서 나오는 선을 공유기의 WAN에 연결해주고 공유기 설정에서 브리지 모드로 바꿔주면 사용할 수 있습니다.

 

pfSense Interfaces

저의 경우 3개의 인터페이스로 분리돼있습니다. WAN과 LAN 그리고 공유기와 연결돼있는 APWIFI 인터페이스입니다. (APWIFI는 제가 만든 인터페이스입니다) LAN과 APWIFI는 브리지로 묶어 사용하고 있습니다.

 

pfSense Bridge

Interfaces > Interface Assignments > Bridges 메뉴에서 관련 설정을 할 수 있습니다.

이렇게 설정을 마치면, 공유기를 통해 연결되는 디바이스는 pfSense의 DHCP 서버를 통해 IP를 할당받게 되고 기존 공유기는 AP의 역할만 하게 됩니다.

2. NAT을 설정해도 인터넷이 안되는 문제

NAT, NAT Reflection, 포트 포워딩 등을 설정(해당 내용은 3번에서 설명합니다) 해도 네트워크 접근이 제대로 안 되는 문제가 있었습니다.

 

  • NAT Reflection을 설정해도 내부망에서 외부 IP(도메인)를 이용해 접근을 못하던가
  • OpenVPN 구축 시 연결이 안됐고
  • 기타 VPN을 이용해도 내부망 접근이 불가능했습니다.

 

Upstream Gateway

문제 원인은 LAN 인터페이스의 Upstream Gateway가 설정되있던 문제로, None으로 설정해주면 해결됩니다. (원인을 5개월동안 모르고 있었습니다...)

3. NAT, 포트 포워딩 사용하기

공유기는 여러 대의 디바이스를 지원하기 위해 NAT(Network Address Translation) 기능을 제공합니다. 이때 내부 포트와 외부 포트를 연결(매핑)해야 하는데, 대부분의 공유기에서는 포트 포워딩이라는 용어를 사용하여 제공하고 있습니다.

 

먼저 NAT 기능을 설정해줘야 합니다. Firewall > NAT > Outbound 메뉴에서 Automatic outbound NAT rule generation. 모드로 해주면 별다른 설정 없이 인터넷을 사용할 수 있습니다.

 

포트 포워딩은 같은 탭의 Port Forward 메뉴에서 가능합니다.

 

  • Address Family는 IP 버전
  • Protocol는 프로토콜
  • Destination는 WAN으로
  • Destination port range 그리고 Redirect target port는 대상 포트
  • Redirect target IP는 내부IP를 입력해주면 됩니다.

Destination port range 옵션은 범위 지정이 가능하며, 이 경우 Redirect target port 옵션에 시작 포트만 넣어주면 끝 포트는 계산해서 적용됩니다. 또한 포트 포워딩 추가 시 자동으로 방화벽에 규칙이 추가됩니다.

 

포트 포워딩 설정 후 내부망에서 외부 IP(도메인)를 이용해 접근이 불가능한 문제가 생깁니다. 이는 NAT Reflection(NAT Loopback) 옵션을 활성화시키면 해결됩니다. System > Advanced > Firewall & NAT > Network Address Translation 메뉴에서 아래와 같이 설정하면 해결됩니다.

 

NAT Reflection 설정

마무리

홈네트워크, 홈랩에 관심을 가지면서 시작하게 됐는데 아직도 모르는 내용이 많습니다. 다음에도 공유할 내용이 생기면 관련해서 써보도록 하겠습니다! 😀

 

 

반응형