我使用的是 Ubuntu 20.04,並且我已啟用 UFW 作為終止開關來與我的wireguard vpn 一起使用。我目前的規則運作良好,只是我的 ubuntu 主機和 debian 10.5 virtualbox guest 之間的流量被阻止。
如何解鎖主機/訪客流量?
我目前的 UFW 規則是:
[ 1] 22/tcp ALLOW IN Anywhere
[ 2] Anywhere ALLOW OUT Anywhere on wg-client1 (out)
[ 3] 80/tcp ALLOW IN Anywhere
[ 4] 443/tcp ALLOW IN Anywhere
[ 5] Anywhere on wg-client1 ALLOW IN Anywhere
[ 6] 94.121.83.88 ALLOW OUT Anywhere (out)
[ 7] 21/tcp ALLOW IN Anywhere
[ 8] 53 ALLOW OUT Anywhere (out)
[ 9] 9418/tcp ALLOW IN Anywhere
我之前嘗試過以下方法,但全部失敗(即當我 ping 訪客 ip192.168.0.84 時,我得到ping: sendmsg: Operation not permitted
)
[10] 22/tcp ALLOW IN 10.10.10.2
[11] 22/tcp ALLOW IN 192.168.0.0/24
[12] Anywhere ALLOW IN 192.168.0.0/24
[13] 192.168.0.0/24 ALLOW IN Anywhere
[14] 192.168.0.0/24 22 ALLOW IN Anywhere
[15] Anywhere ALLOW IN 192.168.0.0/24 22
我還使用偽裝將所有流量通過 VPN。我的ifconfig -a
輸出是:
enp3s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.18 netmask 255.255.255.0 broadcast 192.168.0.255
ether b4:a9:fc:b0:b0:d1 txqueuelen 1000 (Ethernet)
RX packets 668474 bytes 477052588 (477.0 MB)
RX errors 0 dropped 1 overruns 0 frame 0
TX packets 945227 bytes 553827446 (553.8 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
loop txqueuelen 1000 (Local Loopback)
RX packets 2106 bytes 198789 (198.7 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 2106 bytes 198789 (198.7 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vboxnet0: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 0a:00:27:00:00:00 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
vboxnet1: flags=4098<BROADCAST,MULTICAST> mtu 1500
ether 0a:00:27:00:00:01 txqueuelen 1000 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wg-client1: flags=209<UP,POINTOPOINT,RUNNING,NOARP> mtu 1420
inet 10.10.10.2 netmask 255.255.255.255 destination 10.10.10.2
unspec 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00 txqueuelen 1000 (UNSPEC)
RX packets 565766 bytes 350115976 (350.1 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 451704 bytes 440547648 (440.5 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlp0s10f2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.0.6 netmask 255.255.255.0 broadcast 192.168.0.255
ether 34:cf:f6:61:c0:38 txqueuelen 1000 (Ethernet)
RX packets 433847 bytes 102427035 (102.4 MB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 94319 bytes 29872001 (29.8 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
應該注意的是,我的 debian guest 有兩個網路接口,1 個靜態 192.168.0.84 和 1 個動態,以便我可以使用多個 wifi 網路。
# The primary network interface
auto enp0s3
iface enp0s3 inet static
address 192.168.0.84
netmask 255.255.255.0
network 192.168.0.0
broadcast 192.168.0.255
#dynamic gateway for Internet access on random networks
auto enp0s8
iface enp0s8 inet dhcp
謝謝
更新
我終於弄清楚了我的系統日誌,我注意到了這一點:
[UFW BLOCK] IN= OUT=wlp0s10f2 SRC=192.168.0.255 DST=192.168.0.84 ....
當然,我檢查了 vbox 管理器,對於橋接連接適配器,我只有 2 個選項:wlp0s10f2
或enp3s0
(乙太網路)
儘管ifocnfig -a
顯示wg-client1
為網路接口,但我在 virtualbox 中沒有wg-client1
可用的接口。
我使用了不同的規則來允許 22/tcp from wlp0s10f2
on wg-client1
,但沒有成功。
有小費嗎?
答案1
有點尷尬,但在開始賞金後不到 5 分鐘,我透過有根據的猜測解決了問題:
sudo ufw allow out on wlp0s10f2 from any to 192.168.0.84
現在我的全新安裝完美運作。我的錯誤是使用 VPN ip 作為輸出位址。將其變更為 vbox 機器的 IP 位址。讓我重回正軌。