Usando Raspberry PI como roteador OpenVPN para Asterisk

Usando Raspberry PI como roteador OpenVPN para Asterisk

Então, já faz algum tempo que estou batendo a cabeça com isso.

Eu tenho a seguinte configuração:

  • Servidor OpenVPN, IP 1.2.3.1
  • Servidor Asterisk, conectado ao servidor OpenVPN, IP 1.2.3.3
  • Raspberry PI, interface local 192.168.0.17, conectado ao OpenVPN IP 1.2.3.6
  • Telefone IP na mesma rede local do Raspberry PI, ip local 192.168.0.81

As redes são configuradas da seguinte forma:

  • A conexão local no Raspberry é eth0
  • Raspberry possui interface virtual adicional eth0:1 com ip 192.168.0.91
  • A conexão OpenVPN no Raspberry é tun0
  • O telefone tem ip local 192.168.0.81 e gateway configurado para 192.168.0.91 (framboesa)

No Raspberry, o iptables é o seguinte:

#Empty all routing tables
sudo iptables -t nat -F
sudo iptables -F

#Masquerade all traffic leaving tun0 as if coming from 1.2.3.6
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

#redirect all traffic coming from eth0:1 to tun0
sudo iptables -A FORWARD -i eth0:1 -o tun0 -j ACCEPT

#redirect all traffic coming from tun0 to eth0:1
sudo iptables -A FORWARD -i tun0 -o eth0:1 -j ACCEPT

#Modify all packets coming to tun0 to forward then to the IP telephone
sudo iptables -t nat -A PREROUTING -i tun0 -j DNAT --to-destination 192.168.0.81

Assim, posso ligar e receber chamadas (tenho outro laptop que está conectado diretamente ao servidor VPN e usa Zoiper para teste). Posso ligar para o telefone e do telefone e o áudio do telefone para o laptop funciona, mas não há nenhum áudio recebido no telefone.

O que estou fazendo de errado?

ATUALIZAR

Eu também tentei o seguinte

  1. O telefone tem configurações 192.168.200.1 / 255.255.255.0, conectado ao raspberry que tem 192.168.200.2 / 255.255.255.0 (raspberry ip é gateway para telefone)

  2. Raspberry pi com tun ip 10.34.87.2 (conectado ao wifi usando wlan0 e depois ao vpn).

  3. Tabelas IP sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT sudo iptables -A FORWARD -i tun0 -o eth0 -j ACCEPT

  4. No servidor VPN (10.34.87.1)

route add 192.168.200.0/24 10.34.87.2

NOTA: o iptables não tem máscara. Agora consegui rotear o tráfego de 192.168.200.1 -> 10.34.87.1 (servidor VPN), mas não o contrário.

Alguma ideia?

Responder1

O mascaramento é um requisito? caso contrário, como seus telefones têm o Pi como gateway padrão, eles podem acessar o servidor sem nenhum esforço adicional, apenas certifique-se de que o servidor possa acessar os telefones de volta, adicione uma rota no servidor (se necessário) para 192.168.0.0/ 24 (adaptá-lo conforme necessário) através do Pi.

informação relacionada