Quão seguro é um servidor virtual Apache2 que está escutando em um IP privado, para fornecer acesso apenas à VPN

1

Eu tenho um Ubuntu 12.05 em um VPS onde executo o Apache 2.2 e o OpenVPN - ambos no mesmo ip público. Minha intenção era configurar uma área no meu servidor Apache que eu só seria capaz de acessar enquanto estivesse conectado à VPN (usando o OpenVPN), para várias ferramentas que eu prefiro não serem publicamente acessíveis - então uma senha configuração baseada em não funcionará neste cenário.

Ok, ifconfig mostra que a interface tun0 tem a classe A ip 10.8.0.1 . Fui atualizar a zona DNS do meu domínio example.com e adicionei um registro A no, digamos, private.example.com subdomínio - que será resolvido como 10.8.0.1 .
Por outro lado, na configuração do Apache, eu adicionei um host virtual que vai ouvir 10.8.0.1 ( <VirtualHost 10.8.0.1:80> [...] ).

Isso funciona muito bem - agora consigo acessar private.example.com apenas quando estou conectado a essa VPN, mas qual é a segurança dessa configuração? Existem algumas desvantagens óbvias que não vejo; Esta configuração é algo que geralmente é usado?
Observação: é claro, vamos considerar que nem o Apache2 nem a VPN foram comprometidos por outros meios.

    
por Corneliu 21.10.2014 / 22:51

1 resposta

1

Supondo que a VPN não está comprometida, o que você está falando não é totalmente irracional.

Eu consideraria adicionar uma regra iptables para uma abordagem de cinto e suspensórios, como:

iptables -A INPUT -d 10.8.0.1 -i ! tun0 -p tcp --dport 80 -j DROP

Isso deve descartar todos os segmentos de entrada destinados à porta TCP 80 em 10.8.0.1, a menos que a interface de origem seja tun0 . (Estou supondo que você esteja executando uma cadeia INPUT padrão permissiva ou você terá uma regra explícita para permitir esse tráfego também.)

Eu provavelmente ainda gostaria que os cintos-e-suspensórios exigissem autenticação no site voltado para VPN também, mas isso é apenas minha excessiva paranoia.

    
por 21.10.2014 / 23:11