He seguido un tutorial aquí: enlace
Este tutorial nos dice cómo transportar todo el tráfico de Internet a través del túnel DNS si su aeropuerto habilita el DNS saliente sin límite.
Esto nos guía para alojar un servicio DNS en la máquina host y conectarnos al host desde el cliente en el túnel SSH.
He probado esto en un servidor VPS y funciona como un encanto. Tanto el servidor DNS como el cliente funcionan muy bien. Hay un servicio DNS que se ejecuta en el puerto 0.0.0.0:53
en el servidor y un proxy que se ejecuta en el puerto 127.0.0.1:7070
(socks5) en la máquina cliente local.
Pero cuando estaba probando en un cliente físicamente en China continental, no se pudo negociar con el servicio de DNS en VPS para la tunelización.
ssh -ND 7070 -o ProxyCommand="./droute.pl sshdns.mydomain.ga" myvpsuser@localhost -v
Depurar:
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug1: Executing proxy command: exec ./droute.pl sshdns.xigua.ga
debug1: identity file /home/myname/.ssh/id_rsa type 1
debug1: identity file /home/myname/.ssh/id_rsa-cert type -1
debug1: identity file /home/myname/.ssh/id_dsa type -1
debug1: identity file /home/myname/.ssh/id_dsa-cert type -1
debug1: identity file /home/myname/.ssh/id_ecdsa type -1
debug1: identity file /home/myname/.ssh/id_ecdsa-cert type -1
debug1: identity file /home/myname/.ssh/id_ed25519 type -1
debug1: identity file /home/myname/.ssh/id_ed25519-cert type -1
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_6.6.1p1 Ubuntu-2ubuntu2.7
debug1: permanently_drop_suid: 1000
Cuando estaba probando en Internet sin censura en los EE. UU., no se quedará atascado aquí. Me diría que ingrese la contraseña para el usuario myvpsuser
.
Parece que el GFW chino ha censurado y bloqueado el tráfico SSH o DNS.
Si esto no tiene nada que ver con el servicio DNS, ¿podemos pasar el tráfico de Internet a través de otro proxy en lugar del creado por el servicio SSH? ¿O qué más puedo hacer para resolver esto?