Estou no Ubuntu 20.04 e habilitei o UFW como killswitch para trabalhar com minha vpn wireguard. Minhas regras atuais funcionam perfeitamente, exceto que o tráfego entre meu host ubuntu e meu convidado da caixa virtual do debian 10.5 está bloqueado.
Como posso desbloquear o tráfego de host/convidado?
Minhas regras atuais do UFW são:
[ 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
Eu tentei anteriormente o seguinte que todos falharam (ou seja, quando eu pingo convidado ip192.168.0.84, recebo 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
Eu também uso masquerade para colocar todo o tráfego pela vpn. Minha ifconfig -a
saída é:
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
Deve-se notar que meu convidado debian tem duas interfaces de rede, 1 estática 192.168.0.84 e uma dinâmica para que eu possa usar várias redes 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
THX
ATUALIZAÇÃO
Finalmente descobri meus logs do sistema e notei isso:
[UFW BLOCK] IN= OUT=wlp0s10f2 SRC=192.168.0.255 DST=192.168.0.84 ....
Então, é claro, verifiquei o gerenciador vbox e, para meus adaptadores de conexão em ponte, tenho apenas 2 opções: wlp0s10f2
ou enp3s0
(ethernet)
Apesar de ifocnfig -a
mostrar wg-client1
como interface de rede, não tenho wg-client1
como interface disponível no virtualbox.
Joguei com regras diferentes para permitir 22/tcp a partir wlp0s10f2
de wg-client1
, mas não tive sucesso.
Alguma dica?
Um pouco embaraçoso, mas menos de 5 minutos depois de iniciar a recompensa, resolvi o problema com um palpite:
sudo ufw allow out on wlp0s10f2 from any to 192.168.0.84
Agora minha nova instalação funciona perfeitamente. Meu erro foi usar o ip da vpn como o endereço de saída. Mudando isso para o endereço IP da máquina vbox. Me colocou de volta nos trilhos.