개인용 방화벽 PFsense OPNsense Untangle 뭐가 좋을까?

개인용 방화벽 추천 PFsense OPNsense Untangle 셋 중 뭐가 가장 좋을까요? 앞서 방화벽 + 공유기 용으로 구매한 Mini PC에 대해 글을 썼습니다.(자작 공유기 보기) 미국에서 오는 동안 시간이 많이 남아서 방화벽 운영체제 선택을 위해 눈을 좀 굴려봤습니다.

해외 인터넷 커뮤니티를 검색해보면 개인용, 가정용 방화벽은 아래와 같습니다. 자세한 내용은 아래 다시 정리할게요.

  • PFsense : 가장 유명했지만 pfSense CE (Community Edition) 논란 이후 다른 것으로 옮겨가는 유저들이 많이 보입니다.
  • OPNsense : pfSense 사태의 최대 수혜자 입니다. 옮겨와서 적응하는데 문제없고 완전 오픈소스에 업데이트도 매우 좋습니다.
  • Untangle : 리눅스 기반이라 마음에 들었는데 wireguard 쓸려니 유료 버전을 쓰라고 해서 저는 포기했습니다. 인기는 많아요 인터페이스도 이쁘고.
  • 그 외에는 아래의 것들이 있어요.
  • IPtables
  • IPFire
  • ClearOS
  • Endian
  • IPCop
  • Shorewal
  • SmoothWall
  • Vyatta
  • 등 꽤 많은 방화벽이 존재합니다.

UTM(unified threat management)이라고 부르기도 하는데, 각자의 장단점이 있어 저에게 저에게 가장 적합하고 장기간 재미있게 정붙이고 쓸만한 것이 무엇인지 고민해 보았습니다. 저 또한 이쪽 방면에는 초보이기 때문에 내용이 부족할 수 있으니 그냥 참고용으로만 읽어주세요.

PFsense

PFsense가 가장 유명하고, 준전문가들 사이에서도 PFsense + snort 조합이 많이 쓰이는 것 같았습니다. Netgate에서 설명하는 기능들만봐도 대단합니다. 저는 아래의 기능들 중 극히 일부만 사용하겠지만 구경한번 해보시라고 전부 나열해봅니다.

Firewall

SPI / GeoIP Blocking / Anti-Spoofing / Captive portal guest network / Time-based rules / Connection Limits / NAT mapping(inbound/outbound)

Router

Policy-based routing / Concurrent IPv4 and IPv6 Support / Configurable static routing / IPv6-to-IPv6 Network Prefix Translation / IPv6 router advertisements / Multiple IP addresses per network interface / PPPoE Server

Attack Prevention

IDS/IPS / Snort-based packet analyzer / Layer 7 application detection / Multiple rules / sources / and categories / Emerging threats database / IP blacklist database / Pre-set rule profiles / Per-interface configuration / False positive alert suppression / Deep Packet Inspection (DPI) / Application blocking

VPN

IPsec / OpenVPN / Wireguard / Site-to-site and remote access VPN / SSL encryption / VPN client for multiple operating systems / L2TP/IPsec for mobile devices / IPv6 support / Split tunneling / Multiple tunnels / VPN tunnel failover / NAT support / Automatic or custom routing / Local user authentication or RADIUS/LDAP

Proxy and Content Filtering

HTTP and HTTPS proxy / Non Transparent or Transparent caching proxy / Domain/URL filtering / Anti-virus filtering / SafeSearch for search engines / HTTPS URL and content screening / Website access reporting / Domain Name blacklisting (DNSBL) / Usage reporting

Network Services

Dynamic DNS(DDNS) / DHCP Server / DNS forwarding

Configuration Management

Web-based configuration / Setup wizard for initial configuration / Remote web-based administration / Customizable dashboard / Easy configuration backup/restore / Configuration export/import / Encrypted automatic backup to Netgate server / Variable level administrative rights / Multi-language support / Simple updates / Forward-compatible configuration / Serial console for shell access and recovery options / Wake-on-LAN

User Authentication Management

Local user and group database / User and group-based privileges / Optional automatic account expiration / External RADIUS authentication / Automatic lockout after repeated attempts

System Security Management

Web interface security protection / CSRF protection / HTTP Referer enforcement / DNS Rebinding protection / HTTP Strict Transport Security / Optional key-based SSH access

Resilience / Reliability Management

Optional multi-node High Availability Clustering / Multi-WAN for load balancing and failover / Reverse Proxy / Automatic connection failover / Bandwidth throttling / Traffic Shaping Wizard / Reserve or restrict bandwidth based on traffic priority / Fair sharing bandwidth / User data transfer quotas

System Reporting and Monitoring

Dashboard with configurable widgets / Local logging / Remote logging / Local monitoring graphs / Real-time interface traffic graphs / SNMP monitoring / Notifications via web interface, SMTP, or Growl / Hardware monitoring / Networking diagnostic tools

자작 방화벽+공유기를 운영하면 이렇게 많고 다양한 기능들을 사용할 수 있습니다. 그만큼 배움에 드는 시간도 많이 들겠지만요.

PFsense 장점, 단점

UNIX계열 운영체제인 FreeBSD 기반이며, 무료로 사용가능한 기능들이 비싼 상용 수준과 다를바가 없어 아는만큼 많은 것을 할 수 있습니다.(물론 아래 언탱글, OPNsense도 마찬가지 입니다.)

단점으로는 어려운 사용 난이도, 예쁘지 않은 공돌이 스타일 GUI 두가지를 꼽을 수 있습니다. CE(Community Edition)버전과 PLUS(상용)가 구분되어진 상태인데, 개인들이 사용하는 CE 버전에 대한 지원이 뒷전으로 밀릴 것이라는 이야기도 있으나 저같은 일반 유저들 입장에서는 그리 걱정할 필요는 없어 보입니다.

네트워크, 방화벽, 라우팅 기능을 좀 더 깊게 공부하면서 사용하는 분들은 PFsense를 주로 많이 사용하는듯 했습니다. 사용자들이 더 많다는 것은 그만큼 문서들도 많이 존재한다는 뜻이기 때문에 배우며 사용하는데 있어 큰 장점이 됩니다.

해외 유저들의 글을 좀 찾아보면, PFsense를 이끌어가는 Netgate에 대한 불만(아래 제가 선택한 OPNsense에 대한 악의적 행동, 릴리스 주기가 긴데 버그도 그만큼 고쳐지지 않고 오래가는 부분 등에 대한 불마도 있지만, 현재로서는 여전히 오늘 언급한 3가지 방화벽 중에서는 1위이며 커뮤니티 지원과 문서의 양이 여전히 큰 장점으로 작용합니다.(리눅스로 친다면 우분투 같은 느낌)

Untangle

가장 예쁜 인터페이스를 가지고 있습니다. 그리고 셋중 가장 쉬워 접근성이 좋다고 알려져 있습니다. 저도 미모(?)에 반해서 사실 언탱글로 갈려고 했지만, 치명적인 단점은 유료 모듈을 구매해서 사용해야한다는 것 입니다.

대표적으로 요즘 가장 많이 사용하는 VPN 프로토콜인 Wireguard를 사용하려면 ‘NG Firewall Complete’를 구매해야 하는데, 한달에 무려 25달러 입니다.

NG Firewall Free(무료버전)에서 지원하지 않는 즉, NG Firewall Complete 패키지를 구매해야 사용할 수 있는 기능은 아래와 같습니다.

Virus Blocker, Threat Prevention, Application Control, SSL inspector, Spam Blocker, Bandwidth Control, WAN Balancer, WAN Failover, Web Cache, IPse VPN, WireGuard VPN, Directory Connector, Policy Manger, Branding Manger, Configuration Backup, Live support

만약 본인이 사용할 기능들이 Free 버전에 모두 있다면 언탱글이 가장 매력적이라고 생각합니다. 언탱글은 PFsense나 OPNsense와 다르게 리눅스(데비안) 기반입니다.

OPNsense

PFsense 포크 버전이며, 보안에 더 특화된 HardenedBSD 기반 입니다. PFsense에 비해 더 깔끔하게 정리된 UI를 가지고 있으며, OPNsense 유저들이 PFsense보다 더 선호하는 이유를 찾아보면 빠른 업데이트, Netgate의 OPNsense에 대한 악의적 행동에 대한 반감(#), ASLR(Address Space Layout Randomization) 등 FreeBSD에 비해 보안 이점이 있다는 의견(#), 더 자유롭고 많은 기능 사용, 사용이 비교적 더 용이하다. Zerotier, LibreSSL 사용가능, 리얼텍 드라이버 내장, Wireguard 사건(#), Web GUI가 더 빠르고 잘만들었음, 그리고 PFsense Plus 출시 이후로 PFsense CE(무료버전)에 대한 지원이 줄어들 것이라는 예측 등등.. 많은 이야기들이 있는데 저도 모르는 것들이 많고 최근에는 달라진 부분도 있을 수 있습니다.

HardenenBSD가 FreeBSD, OpenBSD, NetBSD에 비해 가지는 강점은 아래와 같다고 합니다.(#)

그런데 올해 4월에 올라온 글을 보니 OPNsense가 HardenenBSD와의 결별설(?)이 있군요. HardenenBSD 팀이 매우 작고 한사람이 주도하기 때문에 별로라고 하는 사람들도 있습니다.(하지만 명성이 이렇게 오랜기간 유지되는 것을 보면 폄하할 부분은 아닌듯) 이렇게 된김에 OpenBSD나 Linux 기반으로 가자는 의견도 있네요.

PFsense 포크 버전이기 때문에 PFsense의 문서들을 참고해도 된다고도 합니다. 인기 플러그인(List) 중 하나는 Sensei(차세대 방화벽 확장프로그램)는 OPNsense WebUI에 통합되어 사용이 더 편하다고 합니다.

결과적으로 왜 OPNsense를 선택했나?

PFsense는 강력하고 가장 많은 사용자층을 확보하고 있지만 Netgate라는 회사에 종속되어있고 지금도 릴리즈 문제로 욕을 먹고있는데 앞으로 CE 버전이 앞으로 어떻게 될지 모르는 점, 그리고 못생김과 비교적 좀 더 어려운 부분 때문에 탈락.

Untangle은 지금도 고민되지만, 후에 내가 공부해서 다양한 기능을 사용하고 싶을때 꽤나 비싼 비용을 지불해야한다는 문제로 탈락.

그래서 결국 OPNsense를 선택하게 되었습니다. PFsense의 강력함에 훨씬 나아진 GUI를 갖춘 제품이며 2FA 인증도 제공하는 장점이 있습니다. 차세대 방화벽인 Sensei를 간단하게 플러그인 설치 방식으로 추가할 수 있고, 파이썬 오픈소스를 기반으로한 악성코드 탐지 시스템인 Maltrail, Adguard Home 역시 쉽게 추가할 수 있으며 와이어가드 VPN, Zerotire, Geo IP, suricata 등 가정용, 개인용으로는 차고 넘치는 툴을 무료로 사용할 수 있다는 것이 감사할 따름입니다.

10 Comments

  1. 1년전 pfsense, untangle, sophos xg 3개 설치해 보고, sophos로 결정해서 지금까지 사용중인데, 만족합니다.
    sophos home은 무료이지만 cpu(4Core), 메모리(6G)를 sw 제약 조건이 있긴한데, 저는 J3455, 8G 사용중이라 만족합니다.

    1. 와 반갑습니다! sophos는 저도 관심이 많이 가는데 홈버전 하드웨어 제약조건이 조금 아쉽네요! 요즘 언탱글도 한번 써볼까.. 고민중입니다

  2. 이 개인용 방화벽의 용도는 주로 nas 이용자들에게 한해서 필요한걸까요? 아니면 토렌트의 실제 ip를 더더욱 숨기기 위해 필요한걸까요?

    1. 저의 경우에는 순수하게 호기심으로 시작한것이고, 방화벽 없을땐 시놀로지 내부 기능만으로도 충분했습니다.(한국 제외한 해외IP 접속 차단 + 역방향 프록시 설정 등) 토렌트쪽과는 더 관련없구요 ㅎㅎ

      아마 PFsense나 OPNsense 등 방화벽을 따로 쓰시는 분들은 거의 없을텐데 쓰지 않을 99% 이상의 사용자들이 별 문제 없는 것을 보면 저는 굳이 써보시라고 추천드리고싶진 않습니다. ㅎㅎ 스트레스가 ㅜㅜ….

  3. 언탱글 가볍게 잘 사용중입니다. 글보니 오피엔센스도 한번 써보고싶어지네요 ㅎㅎ

    1. 유료 가격이 조금만 더 저렴하거나 필요한 모듈 개개별로 구매가 가능하면 언탱글로 넘어갈텐데 다른애들이 무료로 제공하는걸 너무 비싸게 팔아서 아쉽네요 ㅠㅠ

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다