檢視 WireGuard 的原始碼
←
WireGuard
跳至導覽
跳至搜尋
由於以下原因,您無權編輯此頁面:
您請求的操作只有這個群組的使用者能使用:
使用者
您可以檢視並複製此頁面的原始碼。
'''WireGuard'''是一套[[VPN]]軟體。 == 安裝 == 在[[Ubuntu]] 22.04上可以直接安裝: <syntaxhighlight lang="bash"> sudo apt install -y wireguard </syntaxhighlight> == 設定 == 設定檔都在<code>/etc/wireguard</code>下。 === Site-to-site === 這邊假設的環境是: * VPN A的內網在<code>192.168.0.0/24</code>,對外IP是<code>1.2.3.4</code>。 * VPN B的內網在<code>192.168.1.0/24</code>,對外IP是<code>5.6.7.8</code>。 先設定系統,先在<code>/etc/sysctl.d/99-net.conf</code>內設定允許IP forwarding: <syntaxhighlight lang="ini"> net.ipv4.ip_forward=1 net.ipv6.conf.all.forwarding=1 </syntaxhighlight> 接著執行生效: <syntaxhighlight lang="bash"> sudo sysctl -p /etc/sysctl.d/99-net.conf </syntaxhighlight> 先產生對應的Private Key與Public Key: <syntaxhighlight lang="bash"> wg genkey | sudo tee /etc/wireguard/wg.key | wg pubkey | sudo tee /etc/wireguard/wg.pub; sudo chmod 600 /etc/wireguard/wg.key </syntaxhighlight> 接下是<code>/etc/wireguard/wg.conf</code>,在<code>Interface</code>這段都是放自己的資訊,<code>Peer</code>這段都是放對方的資訊(<code>PublicKey</code>可以從對方機器上的<code>/etc/wireguard/wg.pub</code>取得): <syntaxhighlight lang="ini"> [Interface] PostUp = wg set %i private-key /etc/wireguard/%i.key Address = 192.168.0.200 ListenPort = 51820 [Peer] PublicKey = G9colAlX0xdAO+v8Nme4JobfprXWB442WEOChvQjx3c= AllowedIPs = 192.168.1.0/24 Endpoint = 5.6.7.8:51820 </syntaxhighlight> 另外一邊則會是: <syntaxhighlight lang="ini"> [Interface] PostUp = wg set %i private-key /etc/wireguard/%i.key Address = 192.168.1.200 ListenPort = 51820 [Peer] PublicKey = yTC1O+ckZ9tcKAsDpDnx0XQmTg06rJa3z8xk8mEFUy0= AllowedIPs = 192.168.0.0/24 Endpoint = 1.2.3.4:51820 </syntaxhighlight> 然後設定開機跑起來並且設定啟動,兩台機器都要跑: <syntaxhighlight lang="bash"> sudo systemctl enable --now wg-quick@wg </syntaxhighlight> 接著就可以用ping測試跨網段時是否通了(先在wireguard主機上面測,再到其他機器上面測試): <syntaxhighlight lang="bash"> ping 192.168.0.1 ping 192.168.1.1 </syntaxhighlight> 再來設定[[iptables]]防火牆,預設阻擋,後續再開放對應的連線: <syntaxhighlight lang="bash"> sudo iptables -A FORWARD -i wg -j DROP </syntaxhighlight> 然後可以用iptables-persistent把這組iptables設定在開機時自動套用: <syntaxhighlight lang="bash"> sudo apt install -y iptables-persistent </syntaxhighlight> == 外部連結 == * {{Official|https://www.wireguard.com/}} {{en}} [[Category:VPN]]
此頁面使用了以下模板:
Template:En
(
檢視原始碼
)
Template:En icon
(
檢視原始碼
)
Template:ISO 639 name en
(
檢視原始碼
)
Template:Lan
(
檢視原始碼
)
Template:Language icon
(
檢視原始碼
)
Template:Official
(
檢視原始碼
)
Template:Official website
(
檢視原始碼
)
Module:Arguments
(
檢視原始碼
)
Module:Lan
(
檢視原始碼
)
Module:Official website
(
檢視原始碼
)
Module:URL
(
檢視原始碼
)
返回到「
WireGuard
」。
導覽選單
個人工具
登入
命名空間
頁面
討論
臺灣正體
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
視圖
閱讀
檢視原始碼
檢視歷史
更多
搜尋
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
工具
連結至此的頁面
相關變更
特殊頁面
頁面資訊