Compartilhando o OpenVPN no Mac OS X Yosemite

6

Até o OS X 10.9 Mavericks, eu estava compartilhando a conexão OpenVPN desta forma .

No entanto, desde que atualizei meu Mac para o SO mais recente, esse método não é mais válido. Eu fiz algumas pesquisas no google e parece que o novo componente de rede quebra a função.

É possível restaurar a função de compartilhamento como um sistema operacional anterior ao Yosemite? ou existe alguma maneira de trabalhar em um novo método de compartilhamento com os novos utilitários de rede?

Obrigado!

    
por Leon Hayabusa 24.06.2015 / 06:38

1 resposta

6

Para compartilhar sua conexão OpenVPN no OS X Mavericks, Yosemite ou El Capitan, digite os seguintes comandos para ativar o encaminhamento de pacotes:

sudo sysctl -w net.inet.ip.forwarding=1
sudo sysctl -w net.inet.ip.fw.enable=1 

Em seguida, adicione as seguintes linhas a /etc/pf.conf imediatamente após rdr-anchor "com.apple/*" :

lan="{192.168.25.0/24}"
ext_if=en0
vpn_if="utun0"
nat on $ext_if from $lan to any -> ($ext_if)
nat on $vpn_if from $lan to any -> ($vpn_if)

Observe que você deve alterar o endereço de lan para o lan que deseja rotear pela conexão do OpenVPN. ext_if deve ser a interface que está conectada ao lan. vpn_if deve ser a interface do OpenVPN. Eu usei o VyprVPN que usava tun0 em vez de utun0 , então você pode precisar mudar isso dependendo da sua configuração particular.

Em seguida, execute o seguinte para carregar a configuração:

sudo pfctl -d
sudo pfctl -F all
sudo pfctl -f /etc/pf.conf -e

As instruções para fazer isso foram encontradas aqui: link

Carregando com um daemon

Se você deseja que isso seja carregado automaticamente, consulte este repo link , no qual você verá um exemplo de uso de um script de shell com um arquivo .plist para criar um daemon que é carregado na inicialização. Acabei de adicionar /sbin/pfctl -f /etc/pf.conf -e ao final de enable-vpn-forward-nat.sh e fiz o seguinte:

sudo mkdir '/Library/Application Support/vpn'
sudo install -m 755 osx-openvpn-server/enable-vpn-forward-nat.sh '/Library/Application Support/vpn'
sudo install -m 644 net.openvpn.enable-vpn-forward-nat.plist /Library/LaunchDaemons
sudo launchctl load -w /Library/LaunchDaemons/net.openvpn.enable-vpn-forward-nat.plist
    
por 05.11.2015 / 14:27