Adicionando VPN ao firewall UFW

2

Estou tendo problemas no trabalho para me conectar à VPN de trabalho enquanto o Firewall (UFW) está ativo. Quando eu desabilitá-lo "sudo ufw desativar", não há problemas.

Quando está ligado, ao tentar conectar recebo o seguinte

Apr 14 09:57:59 gaj-Lenovo-Z51-70 kernel: [ 2105.983679] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=89 TOS=0x00 PREC=0x00 TTL=121 ID=13425 PROTO=47 
Apr 14 09:57:59 gaj-Lenovo-Z51-70 kernel: [ 2105.996395] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=60 TOS=0x00 PREC=0x00 TTL=121 ID=13426 PROTO=47 
Apr 14 09:58:02 gaj-Lenovo-Z51-70 kernel: [ 2109.042945] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=60 TOS=0x00 PREC=0x00 TTL=121 ID=13427 PROTO=47 
Apr 14 09:58:03 gaj-Lenovo-Z51-70 kernel: [ 2110.040506] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=89 TOS=0x00 PREC=0x00 TTL=121 ID=13428 PROTO=47 
Apr 14 09:58:05 gaj-Lenovo-Z51-70 kernel: [ 2112.061598] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=60 TOS=0x00 PREC=0x00 TTL=121 ID=13429 PROTO=47 
Apr 14 09:58:07 gaj-Lenovo-Z51-70 kernel: [ 2113.994401] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=89 TOS=0x00 PREC=0x00 TTL=121 ID=13430 PROTO=47 
Apr 14 09:58:08 gaj-Lenovo-Z51-70 kernel: [ 2115.012322] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=60 TOS=0x00 PREC=0x00 TTL=121 ID=13431 PROTO=47 
Apr 14 09:58:11 gaj-Lenovo-Z51-70 kernel: [ 2117.994069] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=89 TOS=0x00 PREC=0x00 TTL=121 ID=13432 PROTO=47 
Apr 14 09:58:11 gaj-Lenovo-Z51-70 kernel: [ 2118.017850] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=60 TOS=0x00 PREC=0x00 TTL=121 ID=13433 PROTO=47 
Apr 14 09:58:15 gaj-Lenovo-Z51-70 kernel: [ 2122.002641] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=161.53.97.58 DST=10.111.100.55 LEN=89 TOS=0x00 PREC=0x00 TTL=121 ID=13435 PROTO=47 
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pppd[11718]: LCP: timeout sending Config-Requests
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pppd[11718]: Connection terminated.
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <warn> VPN plugin failed: 1
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]:    SCPlugin-Ifupdown: devices removed (path: /sys/devices/virtual/net/ppp0, iface: ppp0)
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pppd[11718]: Modem hangup
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pptp[11722]: nm-pptp-service-11714 warn[decaps_hdlc:pptp_gre.c:204]: short read (-1): Input/output error
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pptp[11722]: nm-pptp-service-11714 warn[decaps_hdlc:pptp_gre.c:216]: pppd may have shutdown, see pppd log
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pptp[11731]: nm-pptp-service-11714 log[callmgr_main:pptp_callmgr.c:234]: Closing connection (unhandled)
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pptp[11731]: nm-pptp-service-11714 log[ctrlp_rep:pptp_ctrl.c:251]: Sent control packet type is 12 'Call-Clear-Request'
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pptp[11731]: nm-pptp-service-11714 log[call_callback:pptp_callmgr.c:79]: Closing connection (call state)
Apr 14 09:58:17 gaj-Lenovo-Z51-70 pppd[11718]: Exit.
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <warn> VPN plugin failed: 1
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <warn> VPN plugin failed: 1
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <info> VPN plugin state changed: stopped (6)
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <info> VPN plugin state change reason: 0
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <info> Policy set 'eduroam' (wlan0) as default for IPv4 routing and DNS.
Apr 14 09:58:17 gaj-Lenovo-Z51-70 NetworkManager[1620]: <warn> error disconnecting VPN: Could not process the request because no VPN connection was active.
Apr 14 09:58:22 gaj-Lenovo-Z51-70 NetworkManager[1620]: <info> VPN service 'pptp' disappeared
Apr 14 09:58:24 gaj-Lenovo-Z51-70 kernel: [ 2130.359917] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12127 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0 
Apr 14 09:58:24 gaj-Lenovo-Z51-70 kernel: [ 2130.792401] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12128 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0 
Apr 14 09:58:24 gaj-Lenovo-Z51-70 kernel: [ 2131.268906] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12129 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0 
Apr 14 09:58:25 gaj-Lenovo-Z51-70 kernel: [ 2132.221763] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12130 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0 
Apr 14 09:58:27 gaj-Lenovo-Z51-70 kernel: [ 2134.125750] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12131 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0 
Apr 14 09:58:31 gaj-Lenovo-Z51-70 kernel: [ 2137.937259] [UFW BLOCK] IN=wlan0 OUT= MAC=b4:6d:83:e4:ce:8d:00:22:19:6b:e0:22:08:00 SRC=198.252.206.25 DST=10.111.100.55 LEN=110 TOS=0x00 PREC=0x00 TTL=48 ID=12132 DF PROTO=TCP SPT=443 DPT=38605 WINDOW=37 RES=0x00 ACK PSH URGP=0

Como posso adicionar uma exceção?

Obrigado um milhão.

    
por Mookey 14.04.2016 / 09:59

3 respostas

1

Usuário vpn PPTP port 47 aka GRE . Para permitir esse tráfego, edite /etc/ufw/before.rules e adicione no final do arquivo

sudo nano /etc/ufw/before.rules

isto

# gre
-A ufw-before-input -p 47 -j ACCEPT
-A ufw-before-output -p 47 -j ACCEPT

Em seguida, desative, ative ufw

sudo ufw disable
sudo ufw enable

EDIT 1

As regras devem ser colocadas em /etc/ufw/before.rules antes do segmento # drop INVALID packets ...

novamente

sudo ufw disable
sudo ufw enable
    
por 2707974 14.04.2016 / 10:49
2

Eu tenho o mesmo problema que o Mookey, mas posso confirmar que a solução 2707974 está funcionando para mim!

Vamos ver isso passo a passo.

Se o Gufw estiver configurado para incomming: deny e outgoing: permitir o login. Então, se eu ligar a VPN, o primeiro contato para o meu provedor de VPN é permitido normalmente sem quaisquer regras. Quando o provedor de VPN está chamando de volta, sua chamada é bloqueada.

  

[BLOCO UFW] IN = wlan0 SAÍDA =   MAC = 49: ........: 10 SRC = yyy.yyy.yyy.yyy   DST = xxx.xxx.xxx.xxx LEN = 55 TOS = 0x00 PREC = 0x00 TTL = 49 ID = 33716 PROTO = 47

x = eu, y = meu provedor de vpn.

Ele é bloqueado por uma combinação de razões, ip de entrada e protocolo 47.

Agora, quando desligar Gufw novamente e iniciar a vpn. netstat -nautp vê:

  

tcp 0 0 xxx.xxx.xxx.xxx:50798 yyy.yyy.yyy.yyy: 1723 ESTABELECIDO -

A EDIÇÃO 1 de 2707974 está correta, mas deve ser inserida exatamente nesse local. Isso cuidaria do protocolo 47 sendo permitido. Depois disso, você pode adicionar uma regra para permitir a conexão de entrada do seu provador vpn. Você pode usar: sudo ufw allow yyy.yyy.yyy.yyy e está funcionando. Você pode até incluir portas (quando tiver certeza de que elas não são escolhidas aleatoriamente)

sudo insert 1 allow from yyy.yyy.yyy.yyy port 1723 to xxx.xxx.xxx.xxx port 50798

Isso também funciona. Você pode pensar que está resolvido agora, mas há uma preocupação de segurança. A regra do protocolo 47 é processada muito antes da regra de permissão ip. Assim que houver um pacote de entrada do protocolo 47, isso é permitido. Não há como rejeitar se o endereço IP não se encaixa.

Você pode ver acontecendo quando você apaga a regra de IP do ufw. sudo ufw delete 1 (não esqueça de desabilitar / habilitar o ufw novamente) A VPN ainda estará funcionando.

Tenho certeza que você não quer que todos os pacotes de todos os hosts entrem em seu sistema apenas porque são do protocolo GRE. Mais seguro é incluir o IP do seu provedor de VPN para que ele seja o único.

Altere EDIT 1 para:

-A ufw-before-input -p 47 -s <your vpn provider> -j ACCEPT
-A ufw-before-output -p 47 -s <your vpn provider> -j ACCEPT

Isso está funcionando e é seguro. Você pode verificar isso mesmo, alterando o ip acima para um ip incorreto e vpn pára de funcionar. A regra Gufw não é mais necessária, embora tenha sido essa a minha intenção. Eu apreciaria muito mais uma regra de Gufw.

Espero que tenha ajudado você. Felicidades!

    
por Dr.Zuse 21.04.2016 / 22:22
0

Verifique seu Iptables, talvez existam algumas regras que também bloqueiam sua conexão VPN.

iptables -L

ACCEPT de conexões VPN para INPUT também para OUTPUT em Iptables.

iptables -A INPUT -p tcp --dport 47 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 47 -j ACCEPT

Se a conexão VPN funcionar, salve as regras

iptables-save
    
por Gen 15.04.2016 / 10:35