Você precisa configurar o OpenVPN corretamente e, em seguida, limitar o processo do Apache para enviar apenas pacotes pela interface do túnel (Created by OpenVPN).
Eu suponho que você já configurou o OpenVPN como um cliente nesta máquina DigitalOcean, você já sabe como se conectar ao OpenVPN Server que irá anonimizar você, e focar apenas na parte de restrição do aplicativo agora:
-
Seu apache deve estar em execução como um usuário específico. É provavelmente
www-data
se você estiver no Ubuntu. Descubra qual usuário é. -
Usando o iptables, podemos, para qualquer processo cujo proprietário seja
www-data
, restringir o tráfego a uma interface específica (tun0):
iptables -A OUTPUT -m owner --uid-owner www-data \! -o tun0 -j REJECT
Isso basicamente diz que se o proprietário for www-data e estiver tentando enviar pacotes (saída) e a interface não for tun0, rejeite os pacotes.
Teste e verifique se o apache agora parece estar no servidor VPN e não no servidor DigitalOcean.
Agora, para persistir esta configuração:
- Salve sua configuração do iptables:
sudo sh -c "iptables-save > /etc/iptables.rules"
- Use ganchos de interface em / etc / network / interfaces, por exemplo:
auto eth0
iface eth0 inet dhcp
pre-up iptables-restore < /etc/iptables.rules
Agora, a configuração deve persistir durante as reinicializações.