Um telefone velho como gateway VPN: três condições para verificar
Um telefone velho só é um eletrodoméstico se a função for suportada, a rede conseguir alcançá-lo e alguém assumir a recuperação. Três condições, uma decisão.
Um telefone de gaveta tem processador, memória flash, Wi-Fi e bateria, o que é mais hardware do que a maioria dos computadores de placa única que as pessoas implantam com prazer. Ele também tem tela, uma bateria envelhecida e um sistema operacional que deixa de receber correções quando o fabricante segue em frente. Nada disso decide se ele deve se tornar um gateway VPN ou um NAS.
Se ele deve se tornar um gateway VPN ou um NAS não é decidido por essa comparação, porque a comparação é sobre capacidade e a decisão é sobre operação.
Três condições decidem isso. Se qualquer uma falhar, o projeto é um experimento de fim de semana e não um eletrodoméstico, e é melhor saber qual condição falhou antes de migrar dados para ele.
Primeira condição: a função é realmente suportada
Três arranjos recebem o mesmo nome. Um cliente VPN protege o tráfego dos aplicativos no telefone. Um servidor VPN aceita conexões de entrada. Um gateway encaminha o tráfego de outros dispositivos para um túnel. São projetos diferentes, e um túnel de cliente que funciona não prova nada sobre os outros dois.
Um aplicativo no Android padrão está sujeito às regras de execução em segundo plano, e um terminal deixado aberto não é um daemon. O guia de Doze e App Standby da própria plataforma explica por que um processo em segundo plano pode perder o acesso à rede quando o dispositivo decide ficar ocioso, e esse é exatamente o comportamento que você não pode ter em um gateway.
O espaço de usuário do Linux dentro do Android herda mais restrições do que remove. Um chroot muda a raiz do sistema de arquivos mas continua rodando no kernel do Android, nos seus drivers e na sua política de segurança, então root dentro do chroot não é root sobre a plataforma. Substituir o sistema operacional faz, em vez disso, do suporte de modem, armazenamento e energia para aquele aparelho específico parte do seu projeto, e o suporte de aparelhos costuma ser a parte que ninguém mantém.
Segunda condição: o endereço é alcançável
Um gateway precisa ser alcançável pelos clientes que dependem dele. Um telefone no Wi-Fi dentro de um roteador doméstico é alcançável a partir dessa LAN e de qualquer lugar para onde o roteador encaminhe, mas não da internet a menos que você organize isso.
O celular torna isso mais difícil, não mais fácil. Muitas redes móveis colocam os assinantes atrás de NAT de nível de operadora, então não há nenhum endereço de entrada para encaminhar, e adicionar um modem não cria um ouvinte público. Se o requisito é acesso remoto de fora, o projeto deve incluir um relay ou uma rede overlay à qual ambas as pontas se conectem para fora, e essa é uma segunda peça móvel a manter.
A conexão de rede também varia conforme o dispositivo. Alguns telefones aceitam adaptadores Ethernet USB, outros não, e o Wi-Fi acrescenta sua própria latência e comportamento de roaming. Um gateway que dorme quando a tela está apagada ou que derruba o túnel durante um handover é pior do que nenhum gateway.
Terceira condição: alguém assume atualizações e recuperação
Esta é a condição que as pessoas pulam, e é ela que decide se a coisa sobrevive um ano. Cada componente precisa de um responsável: a compilação do sistema operacional, o kernel se você o substituiu, o pacote do servidor, os certificados e as credenciais que você distribuiu.
A recuperação é a metade mais difícil. Como você entra depois de uma reinicialização sem tela, com um painel de toque quebrado ou uma bateria inchada? Como você revoga a identidade de um cliente perdido? Como você restaura o armazenamento em um dispositivo substituto quando o original é um modelo descontinuado?
A energia também pertence aqui. Carga sustentada significa calor sustentado, e uma bateria envelhecida não é um UPS automático. Siga as orientações do fabricante e trate qualquer inchaço ou dano como um sinal de parada e não como algo a contornar.
Quando a resposta é não
Aplique as três condições ao que você realmente precisa, e seja específico sobre a tarefa em vez da categoria.
| Task | Phone is reasonable when |
|---|---|
| Protecting the phone's own traffic | The client is a supported Android app; no forwarding involved |
| Small lab tunnel inside one LAN | Downtime is acceptable and you can reach the device to fix it |
| Household NAS holding the only copy | Never; that is a backup problem, not a hardware problem |
| Unattended remote access for others | You already own patching, revocation and replacement |
Um host Linux dedicado também não escapa da lista. Ele tem um gerenciador de serviços e um caminho de administração de armazenamento e rede mais claros quando o hardware e a distribuição são suportados, mas ainda precisa de energia, atualizações e backups. A placa sozinha não é um eletrodoméstico.
Então escolha o telefone quando suas capacidades suportadas se encaixarem em uma tarefa modesta e o tempo de inatividade experimental for realmente aceitável. Escolha outra coisa quando o requisito for armazenamento doméstico que não pode ser perdido, ou acesso remoto do qual outras pessoas dependerão. Em ambos os casos, o fator decisivo é uma instalação reproduzível e um procedimento de recuperação que você realmente testou, e nenhuma quantidade de hardware gratuito substitui qualquer um dos dois.