Rede e Tor
O RedderOS segue uma regra: Tor ou nada. Todo o TCP sai pelo Tor, o DNS é resolvido através do Tor e tudo o resto é descartado. Se o Tor não arrancou ou não liga, não há rede: o sistema falha fechado, nunca aberto.
O que acontece a cada tipo de tráfego
| Tráfego | O que a firewall faz |
|---|---|
| TCP de qualquer programa | É redirecionado para o TransPort do Tor (127.0.0.1:9040). |
| DNS (UDP 53, para qualquer servidor) | É redirecionado para o DNSPort do Tor (127.0.0.1:5353). |
| Outro UDP | É descartado e registado no log do kernel como redderos-leak-blocked. |
ICMP (ping) | É descartado. |
| IPv6 | Desativado no kernel (ipv6.disable=1) e descartado na firewall. |
| Tráfego de entrada | É descartado, exceto respostas a ligações próprias e DHCP. |
| Reencaminhamento entre interfaces | É descartado. |
Só o utilizador debian-tor, com o qual o Tor é executado, pode abrir ligações novas para a
Internet. A única exceção é o DHCP, para obter endereço IP.
Como o redirecionamento é transparente, os programas não precisam de configurar nenhum proxy. A
firewall está em /etc/nftables.conf e é carregada antes de qualquer aplicação.
Tor
O Tor escuta apenas em 127.0.0.1:
| Porta | Utilização |
|---|---|
9050 | SocksPort para programas que falam SOCKS (Tor Browser, torsocks). |
9040 | TransPort: recebe o TCP redirecionado pela firewall. |
5353 | DNSPort: resolve os nomes pelo Tor. |
Outras definições de /etc/tor/torrc:
- Isolamento de circuitos: pelo SocksPort, cada destino (endereço e porta) usa um circuito diferente.
- Endereços
.onion: são resolvidos para endereços virtuais internos, por isso funcionam também com programas que não falam SOCKS. - Sem IPv6 para a rede Tor, e escritas no disco reduzidas ao mínimo.
- Registos só no journal, que vive na RAM.
Tor Browser
O atalho do ambiente de trabalho usa o torbrowser-launcher. Da primeira vez, transfere o Tor
Browser (pelo Tor) e verifica a assinatura; a transferência demora e, numa sessão amnésica, repete-se
em cada arranque. Num perfil, fica guardada.
O Tor Browser está configurado para usar o Tor do sistema em vez de lançar o seu: assim não se executa Tor dentro de Tor, e a configuração de rede do navegador fica oculta.
Identidade na rede local
- MAC aleatório em cada arranque, para todas as interfaces.
- Hostname genérico
redderos, igual em todos os computadores, e ummachine-idvazio. - DHCP sem impressão digital: não envia o hostname nem identificadores estáveis, e ignora o DNS, o NTP, o hostname e os domínios que o router propuser.
- Sem LLMNR, mDNS nem endereços IPv6 de ligação local.
Verifique o MAC com redder-status.
Redes censuradas: pontes
Se a rede bloquear o Tor, pode usar pontes. Arranque com Administrador temporário, edite
/etc/tor/torrc e retire o comentário das linhas preparadas, acrescentando as suas pontes:
UseBridges 1
ClientTransportPlugin obfs4 exec /usr/bin/obfs4proxy
Bridge obfs4 <dirección>:<puerto> <huella> cert=… iat-mode=0Depois, reinicie o Tor:
sudo systemctl restart torO obfs4proxy vem instalado. Como tudo vive na RAM, a alteração no torrc perde-se ao desligar:
é preciso repeti-la em cada arranque.
A hora
O sistema não usa NTP (seria tráfego fora do Tor). O Tor precisa de uma hora razoavelmente correta para ligar: se o relógio do computador estiver muito desviado, corrija-o na BIOS/UEFI.