Como posso usar o iptables para restringir o acesso a endereços .onion no Tor?

1

Eu quero restringir o acesso à rede de saída (com exceção das conexões ao host local) para TCP e UDP sobre o Tor e bloquear todo o resto (com exceção das conexões do aplicativo Tor e localhost). O objetivo é restringir os usuários a localhost e *.onion endereços para os quais o Tor cria uma rede de endereço virtual 10.192.0.0/10 (usando a opção VirtualAddrNetwork no arquivo torrc).

Aqui está o meu atual iptables-save:

*mangle
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
COMMIT
*nat
:PREROUTING ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -d 10.192.0.0/10 -p tcp -j REDIRECT --to-ports 9040
-A OUTPUT ! -o lo -p tcp -m tcp -m owner ! --uid-owner debian-tor -j REDIRECT --to-ports 9040
-A OUTPUT ! -o lo -p udp -m udp --dport 53 -m owner ! --uid-owner debian-tor -j REDIRECT --to-ports 53
COMMIT
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A OUTPUT -m owner --uid-owner debian-tor -j ACCEPT
-A OUTPUT -p tcp -m tcp --dport 9040 -j ACCEPT
-A OUTPUT -p udp -m udp --dport 53 -j ACCEPT
-A OUTPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A OUTPUT ! -o lo -j DROP
-A OUTPUT -p icmp -j REJECT --reject-with icmp-port-unreachable
COMMIT

Eu tentei adicionar isso no início do *filter , antes do restante das regras, mas todas as conexões falharam:

-A OUTPUT -o lo -j ACCEPT
-A OUTPUT ! -d 10.192.0.0/10 -m owner ! --uid-owner debian-tor -j REJECT

Por que a segunda linha no código acima bloqueia todo o tráfego? Quais são as regras adequadas para o seguinte:

  • permitir todas as entradas
  • permitir todo o envio para o localhost
  • permite todas as saídas iniciadas pelo usuário debian-tor
  • redireciona todo o UDP 53 de saída não iniciado pelo debian-tor para localhost 53
  • redireciona todos os TCP e UDP de saída não iniciados pelo debian-tor para localhost 9040
  • bloqueia todo o resto
por Albert Newman 13.03.2013 / 20:53

0 respostas

Tags