iT邦幫忙

2025 iThome 鐵人賽

DAY 22
1
IT 管理

無職轉生:到了IT就拿出真本事!IT 維運 30 日修煉系列 第 22

Day22 - 章節二十一:隱形通道之術 ‧ SoftEther VPN Server 架設與 dnsmasq/IPTables 管理(安全傳輸篇)

  • 分享至 

  • xImage
  •  

https://ithelp.ithome.com.tw/upload/images/20250922/20178480uU8u6sBMG4.png

在前一章,我們理解了 VPN 的本質——隱形斗篷與星際傳送門。如今,修行者的試煉來到下一步:親手打造一座 SoftEther VPN 伺服器,並運用 dnsmasq 與 iptables 為通道加上智慧結界。

這不再只是理論,而是將魔法文字轉化為現實陣法,讓隊伍能在數位迷宮中自由穿梭,同時守護每位冒險者的資料安全。

🏯 SoftEther VPN 的魔法工坊

SoftEther VPN(Software Ethernet)是一座多協定兼容的數位工坊。它的力量在於同時支持 OpenVPN、L2TP/IPSec、SSL-VPN、WireGuard 等多種協定,讓不同冒險者都能找到合適的入口。

神器特點

  • 多面相容:Windows / Linux / macOS / Android / iOS 全平台通行
  • 自由之門:支援多協定並存,化身多種傳送門
  • 守護之盾:高強度加密與使用者控管,築起堅固結界

🔨 實戰鍛造 — 架設流程

① 環境準備 — 收集鍊金材料

sudo apt update && sudo apt upgrade -y
sudo apt install build-essential wget unzip dnsmasq iptables -y

確保伺服器乾淨穩定,為鍛造做好基底。

② 下載與編譯 — 注入魔力

wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.41-9787-rtm/softether-vpnserver-*.tar.gz
tar xzvf softether-vpnserver-*.tar.gz
cd vpnserver
make

選擇三次 1,在符文卷軸上刻下安全契約。

③ 權限設定 — 陣法封印

sudo mv vpnserver /usr/local/
cd /usr/local/vpnserver
sudo chmod 600 *
sudo chmod 700 vpncmd vpnserver

確保只有持有者能啟動,避免黑暗勢力入侵。

④ 啟動守護者 — 喚醒靈脈

sudo /usr/local/vpnserver/vpnserver start

VPN 的靈脈正式流動。

⑤ systemd 服務 — 自動化結界

sudo nano /etc/systemd/system/vpnserver.service

內容:

[Unit]
Description=SoftEther VPN Server
After=network.target

[Service]
Type=forking
ExecStart=/usr/local/vpnserver/vpnserver start
ExecStop=/usr/local/vpnserver/vpnserver stop
ExecReload=/usr/local/vpnserver/vpnserver restart

[Install]
WantedBy=multi-user.target

啟動:

sudo systemctl enable vpnserver
sudo systemctl start vpnserver

🔑 目的:確保伺服器開機自動啟動,VPN 靈脈隨系統常駐流動。

⑥ 初次密碼 — 守護者之鑰

/usr/local/vpnserver/vpncmd

選擇 1 → Enter → ServerPasswordSet 設定管理員密碼。

🌐 dnsmasq — DHCP 的智慧魔法

SoftEther 內建 DHCP 雖方便,但靈活性不足、管理多 hub 或 MAC 白名單有限。使用 dnsmasq 可以:

  • 精準控制每個 hub 的 IP 範圍
  • 綁定特定 MAC 地址授予固定 IP
  • 設定 DHCP 選項,如預設閘道與 DNS
  • 結合 iptables 控制訪問範圍,防止敏感資源被濫用

範例設定:

interface=tap_soft5
dhcp-range=tap_soft5,192.168.11.50,192.168.11.150,12h
dhcp-option=tap_soft5,3,192.168.11.1
# 只給白名單設備分配 IP
dhcp-ignore=tap_soft5,tag:!known
dhcp-host=<MAC_ADDRESS>,192.168.11.50

重啟 dnsmasq:

sudo /etc/init.d/dnsmasq restart

🔑 目的:將 IP 分配變為可控魔法,避免陌生設備入侵內網。

🛡️ iptables — 封鎖與轉送的護盾

iptables 是 VPN 的防火牆與 NAT 精靈,能:

  • 控制不同 hub 的對外流量
  • 封鎖內網敏感資源
  • 設置 NAT,使 VPN 客戶端能正常訪問外部網路

範例規則:

# NAT 映射
iptables -t nat -A POSTROUTING -s 192.168.11.0/24 -j SNAT --to-source <SERVER_PUBLIC_IP>

# 封鎖內網特定服務
iptables -I FORWARD -i tap_soft5 -d <SENSITIVE_IP> -j DROP

常用操作:

# 查詢 POSTROUTING
iptables -t nat -v -L POSTROUTING -n --line-numbers

# 刪除 POSTROUTING
iptables -t nat -D POSTROUTING <line-number>

# 查詢 FORWARD 封鎖規則
iptables -L FORWARD -n -v --line-numbers

# 刪除 FORWARD 規則
iptables -D FORWARD <line-number>

保存規則:

iptables-save > /etc/iptables/rules.v4

重啟 VPN 服務:

sudo /etc/init.d/vpnserver restart

⚔️ 實戰情境

  • 遠端辦公:隊友從異地登入,安全訪問內網資源
  • 公共 Wi-Fi 防護:在咖啡廳、機場也能穿越隱形護盾
  • 跨國協作:團隊全球分布,資料安全無虞

📜 修行者的總結

SoftEther VPN + dnsmasq + iptables 是多層次安全結界:

  • VPN:隱匿身份與加密隧道
  • dnsmasq:智慧 DHCP,控制 IP 與 MAC 白名單
  • iptables:封鎖敏感資源、管理 NAT

修行者不只是使用者,而是通道鍛造師與守護者,讓每一條隱形通道既自由又安全。


上一篇
Day 20 - 章節二十:隱形通道之術 ‧ 掌握 VPN 的暗道與隱匿通路(安全傳輸篇)
下一篇
Day23 - 章節二十二:隱形通道升級術 ‧ SoftEther VPN 高階多 Hub 管理與 dnsmasq&IPTables 精控(安全傳輸篇)
系列文
無職轉生:到了IT就拿出真本事!IT 維運 30 日修煉23
圖片
  熱門推薦
圖片
{{ item.channelVendor }} | {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言