O OpenVPN é um software livre e open-source para criar redes privadas virtuais do tipo ponto-a-ponto ou server-to-multiclient através de túneis criptografados entre computadores. Ele é capaz de estabelecer conexões diretas entre computadores mesmo que estes estejam atrás de Nat Firewalls sem necessidade de reconfiguração da sua rede. Ele foi escrito por James Yonan e publicado sob licença GNU General Pulic Licence (GPL).
Instalando no Ubuntu
apt-get install tinc
Instalando TINC no windows
http://tinc-vpn.org/examples/windows-install/
VNC Seguro com Túnel SSH no Debian
Instalar o VNC. Existem vários, escolhi o TightVNC por ter suporte a senha
apt-get install tightvncserver
Agora é preciso iniciar o servidor do VNC
tightvncserver -geometry 1024x768 :1
O VNC por padrão inicia na porta 5900. Colocando o :1 indico para iniciar em 5901.
Uma vez iniciado o servidor, criamos um tunel SSH do computador q iremos acessar para o servidor VNC.
ssh -f -N -L 5901:localhost:5901 root@mirako.org -p 22
Abrindo o X remoto
vncviewer 127.0.0.1:5901
SSH Reverso
ssh -C -N -f -R 4444:localhost:22 media@187.10.223.67 -p 22
Com o comando acima, a porta 22 da máquina local, será listada automaticamente no loopback (127.0.0.1), na porta 4444 do ip 187.10.223.67.
Com isso, eu poderei conectar na máquina dele digitando:
ssh -p 4444 localhost -l root
Abrindo a porta 8000 do servidor remoto pela porta 22 no localhost
sudo ssh santocyber@52.14.189.224 -L 22:localhost:22 -L 8000:localhost:8000