A caixa só se comunica apenas na lan?

2

Estou executando uma VM com o Debian como sistema operacional convidado (posso escolher outra distro). Tem o nginx rodando junto com outro software.

Alguns dos softwares tentam fazer conexões de saída (por exemplo, verificando atualizações ou enviando informações de uso). Eu gostaria de bloquear isso. Eu também estaria disposto a bloquear conexões de entrada para que apenas a LAN ou meu próprio computador (o host) possa se comunicar com ele.

Como configuro o Linux ou o hipervisor (estou usando o VMWare player) para não permitir o uso da Internet - apenas permitir meu computador e talvez a LAN? O sistema operacional host é o Windows 7.

    
por derobert 12.09.2012 / 16:13

1 resposta

2

A maneira mais fácil é provavelmente não ter uma rota padrão. Se você configurou um endereço IP estático, edite /etc/network/interfaces e comente a linha "gateway".

Se você estiver usando o DHCP, talvez não seja possível solicitar um gateway (edite /etc/dhcp3/dhclient.conf e altere a "solicitação" para não solicitar "roteadores", mas eu não testei isso. Como alternativa, poderia simplesmente deletar depois ...

Finalmente, você pode usar o iptables para isso:

iptables -P OUTPUT DROP
iptables -A OUTPUT -d 127.0.0.0/8 -j ACCEPT    # let it talk to localhost
iptables -A OUTPUT -d 192.168.0.0/24 -j ACCEPT # use LAN range here
iptables -A OUTPUT -d 10.0.0.2 -j ACCEPT       # your machine here

Tenha em mente o acesso aos seus servidores DNS. Se não estiverem na sua LAN, a resolução de nomes não funcionará. (Com a abordagem iptables, é trivial adicionar regras para permitir o acesso a elas).

Além disso, lembre-se de que você está proibindo o acesso a (por exemplo,) http.us.debian.org, para que o apt-get update / upgrade não funcione. Você pode corrigir isso com iptables:

iptables -I OUTPUT -m owner --uid-owner 0 -j ACCEPT # allow root to do anything

assumindo que seus serviços não sejam executados como root.

A maioria dos serviços que verificam automaticamente atualizações / uso de relatórios / etc. pode ser configurado para não. Você também pode fazer isso.

Além disso, se você quiser, poderá usar o iptables para permitir respostas ao tráfego de entrada de máquinas que não sejam LAN (usando o rastreamento de estado). Digitar man iptables dará detalhes.

    
por 12.09.2012 / 17:29