Vamos considerar que temos uma conexão de rede não criptografada (por exemplo, Ad-hoc Wifi sem WPA, mas não limitado a wireless, é claro). Qual é a maneira mais simples de protegê-lo (tendo GNU/Linux em ambos os lados).
Esperando as seguintes propriedades:
- Não específico da distribuição (não ifup/ifdown, não integrando em nenhum /etc/init.whatever)
- De preferência, nenhum arquivo de configuração (apenas comandos no console)
- Respondendo de preferência em módulos de kernel padrão presentes na maioria dos kernels distribuídos.
O desempenho não é crítico.
Esperando algo como fazer:
ip link add encrypted_link0 type encrypted link=wlan0 psk=k48M1n3n6
ip link set encrypted_link0 up
ip link addr add 192.168.44.2/30 dev encrypted_link0
ip route add via 192.168.44.1 dev encrypted_link0
de um lado e
ip link add encrypted_link0 type encrypted link=wlan0 psk=k48M1n3n6
ip link set encrypted_link0 up
ip link addr add 192.168.44.1/30 dev encrypted_link0
echo 1 > /proc/sys/net/ipv4/conf/encrypted_link0/forwarding
do outro lado.
Não pensando em nenhum servidor de autenticação, apenas usando algum bom algoritmo padrão como o aes256, não pensando em configurar vários cisnes ou guaxinins.
Responder1
Criei um pequeno programa especial para isso:https://github.com/vi/tap_mcrypt
iwconfig wlan0 mode Ad-Hoc
iwconfig wlan0 essid access_point_name
ip link set wlan0 up;
MCRYPT_KEYFILE=/root/enc0_key DEV_NAME=enc0 tap_mcrypt wlan0 74:f0:6d:7b:8d:c3 &
sleep 0.5
ip link set enc0 up
ip addr add 192.168.99.128/24 dev enc0
Não é superseguro, mas é fácil de configurar e deve funcionar com várias conexões.