之前一直是買成品路由器用著,後來添購多網口的 Mini PC 後就開啟新世界了~
在 Mini PC 上面安裝個 Proxmox VE 虛擬機系統,就可以隨意安裝各種系統來玩
剛開始不熟先跑個 OpenWRT 暖暖身,後來發現 RouterOS CHR 後就一直用著也蠻舒服
這兩套簡單白話來說:
OpenWRT 操作設定上最接近市面的成品路由器,而且有各種軟體包可以安裝,可玩性高而且是免費開源的
RouterOS 佔用資源小而且功能強大,但是用起來操作較為複雜,對於新手小白入門的門檻比較高
然而閒著蛋疼,最近一段時間又改裝了 pfSense,它跟 OpenWRT 一樣也是開源免費的
跟 pfSense 同門師兄弟的還有 OPNsense,看名字就知道,OPNsense 是在 pfSense 基礎上修改的分支
稍微比較一下之後,最後我選擇 pfSense 來玩玩,因為 pfSense 網路上討論度似乎比較高。。。🤷♂️
pfSense 下載與安裝
直接去官網下載,官方有提供 ISO 格式,可以直接在 Proxmox VE 裡面載入使用
安裝過程跟普通虛擬機安裝差不多,根據提示依照自己環境輸入設定即可
在安裝這種軟體路由時候,建議只先插上 WAN 的網路線,LAN 可以等設定完畢再插上比較不容易出問題
像我是申裝中華電信光世代,設定 PPPoE 帳號密碼後,馬上就可以正常上網
以上的設定過程跟市售成品路由器差不多,指定 DHCP 後端 IP 地址,很簡單就能搞定上網
接下來設定一下中華電信光世代不固定制的 IPv6 上網
pfSense 中華電信光世代不固定制 IPv6 設定
接著繼續往下滑動,會看到 DHCP6 Client Configuration 的欄位
此頁設定完,記得繼續往下滑,按下 Save 按鈕保存
這時候看 Dashboard 資訊,應該能看見 WAN 已經能正常取得 IPv6 資料,接下來繼續設定 LAN 讓內部設備都能拿到 IPv6
繼續往下滑,看到「Track IPv6 Interface」欄位
同樣設定完畢記得按下最下面的「Save」按鈕,保存之後稍等一、兩分鐘,內部網路的設備應該就能自動拿到 IPv6
(如果上述設定都做完依然沒有拿到 IPv6 的話,請把 pfSense 跟你的設備重新關機再啟動試試看)
此時設備也已經具備 IPv6 上網能力,可以打開一個 IPv6 網站測試,例如:
能打開就表示沒問題,但是此時你如果去 https://ipv6-test.com 測試的話,大概只能拿到 18 分(滿分 20)
這是因為防火牆把 ICMP 擋掉了,此時繼續回到 pfSense 的防火牆設定,在 Firewall / Rules 裡面新增一條規則
設定完畢後保存,記得還要按下 Apply Changes 的按鈕,讓防火牆規則生效
按下 Apply 幾秒後再回到剛剛 https://ipv6-test.com 網站去跑一次測試
pfSense GeoIP Blocking
喜歡用軟體路由另外一個原因是,可以輕鬆載入大量 CIDR IP 段,這對於經常在搭各種服務給自己用的人非常方便
例如搭一個 AdGuard Home 的服務出來,如果直接在網路上開放 53 端口,被惡意的人掃到就有可能被攻擊
除非你就是想搭一個公共的,打算服務普羅大衆,否則實在沒必要全面開放,防火牆開放越少就會越安全
假設你像我一樣,大部分時間都待在國內,那你可以只開放給國內的 IP 段連線使用而已
網路上已經有很多已經整理好基於國家 IP 段的資料,我們只要加載到 pfSense 防火牆裡面即可
這裡推薦這個項目,每隔幾個小時偵測到變化項目就會自動更新,非常方便
https://github.com/herrbischoff/country-ip-blocks
取得內容以後,就全部拷貝起來,接著回到 pfSense 防火牆設定
pfSense 允許一次 Import 很多資料
建立好你想要的 Alias 以後,我們可以去 pfSense 防火牆弄 Port Forward 開端口了~
這裡我們就拿 AdGuard Home 舉例,DNS Server 通常要開 Port 53 UDP
Source 那邊我們就填上剛剛新增的 Alias,也就是只有允許台灣 IP 才能連進來,非台灣的 IP 走 53 端口過來都會被拒絕
當然你可以再更激進一點,只加入你家裡跟公司的固定 IP,然後再加上你行動網路系統商的 IP 段
開放範圍越小也就越安全,但是太激進也會為你帶來臨時的不方便,例如你偶而會去客戶公司或者親戚朋友家裡使用 WiFi 時?
所以一般情況建議開放整個台灣段即可,如果臨時會去日本或者韓國,可以在出發前添加一條允許日本或者韓國的 CIDR
pfSense 可玩性也是蠻高,有些第三方軟體包也非常實用
像是跟 Pihole、AdGuard Home 類似可以擋廣告、惡意網站。。等等的 pfBlockerNG,就非常好用!
裝在 pfSense 裡面的話就可以少裝一套 AdGuard Home 啦! 😁