This forum is closed for posting. Please, join us in our Discord server at discord.gg/regnum. See you there!
|
La Taberna Un lugar para conversar sobre casi cualquier tema |
08-26-2008, 01:22 AM
|
#1
|
Duke
Join Date: Nov 2006
Location: 0x00CAFE
Posts: 3,366
|
Regnum por un túnel ssh, o cómo me salteé la seguridad de un firewall blando
DISCLAIMER:
No me hago responsable del uso de ésta información, como así de los daños que pueda causar por su mala utilización. Antes de aplicar cualquiera de los procedimientos se debe saber del tema y no "lanzarse a lo desconocido".
AbstractSe pretende explicar brevemente una técnica para saltearse un firewall que bloquee puertos específicos y que deje tan sólo algunos abiertos (fundamental). En teoría, la guía sirve para cualquier sistema operativo utilizando las herramientas apropiadas.
RequisitosGlobales- Regnum Online (para jugar)
- Servidor SSH fuera de la red con firewall
Linux- Tsocks, proxychains o equivalente (se usa tsocks en los ejemplos)
- Cliente SSH. Generalmente con el paquete de OpenSSH va perfecto
Windows- PuTTY (hace las veces de cliente OpenSSH)
- Sockschain o similar
Intro (saltearse esto si ya se conoce algo del tema... es la explicación aburrida)Conectarse al Regnum desde algún sitio con internet a menudo no es tan sencillo como usar el browser, ya que hay tecnologías de captive portal, traffic shapping o bloqueo de puertos que impiden siquiera conectarse al servidor.
Si uno ya cuenta con un servidor SOCKS5 dentro de la red y quiere utilizar el juego entonces la guía puede servir, pero supongo que ya sabrán resolverlo (o lo explicaré en otro post).
Información importante sobre la máquina servidora, la que está fuera del firewall y que cuenta con una conexión a internet decente, sin bloqueos y con un buen up/down stream. Cabe destacar que debe contener una capacidad de procesamiento razonable si es que ejecuta otros servicios.
La máquina servidora va a hacer las veces de salida de túnel por el cual se va a realizar el conexionado al servidor del Regnum. Los datos van a viajar encriptados por el túnel hasta la máquina cliente, donde el ssh le deriva los paquetes al servidor de SOCKS5 y éste al juego (sí, describí el camino a la inversa ).
En otras palabras, la transferencia de datos sería así:- Regnum trata de conectarse.
- El "sockificador" redirecciona los paquetes al servidor SOCKS5 (SSH).
- El cliente SSH recibe la información, la codifica y envía por un puerto determinado al Servidor de SSH.
- [acá está el firewall con un puerto como el 80 ó 443 abierto]
- [acá está Internet]
- Los datos llegan cifrados al servidor SSH, quien los desencripta y realiza la conexión al servidor del Regnum.
- Servidor del Regnum responde.
Puntos importantes:- Para Ra, la conexión sería totalmente transparente y no se daría cuenta que hay un túnel antes del cliente.
- La conexión está cifrada desde el cliente hasta el server SSH. Si uno se conecta en una red wifi abierta o con WEP todavía los datos serían seguros.

- No sólo se puede hacer con el Regnum, sino que con miles de aplicaciones.
- Realmente no sube mucho la latencia si es que se tiene una buena conexión y hay pocos saltos.
- El OS del servidor SSH es trivial.
Desarrollo:
Lado del Servidor
Primero vamos a configurar la máquina servidora. Tiene que ejecutar el servidor de OpenSSH en un puerto que el firewall tenga abierto. Para eso podemos hacer un nmap a nuestra computadora detrás del cortafuegos. Es conveniente usar puertos altos (>1024) porque no requieren privilegios de administrador.
Para setear el OpenSSH en otro puerto sólo tienen que iniciar el demonio sshd con -p y el puerto en cuestión. Es conveniente matar al demonio si es que ya está en ejecución.
Lado del Cliente
Ya que los comandos son útiles para otros programas aparte del Regnum voy a hacerlo por separado.
Linux Primero instalamos un programa como tsocks o proxychains. Yo prefiero tsocks porque es, a mi modo de ver, el más fácil para configurar y menos problemático en el momento de la compilación.
Ejemplos a continuación con tsocks.
Paso 1: crear el .tsocks.conf
Abrir el editor de texto preferido (vi, emacs (aunque si usás emacs no necesitás leer esto, ya lo sabés) nano, gedit) y crear un archivo llamado ".tsocks.conf" en el home de tu usuario. El archivo debe contener lo siguiente:
Code:
server = 127.0.0.1
server_type = 5
server_port = 1234
NOTA: el puerto "1234" es el mismo en el que debe escuchar el cliente ssh, y no es el del servidor ssh.
Paso 2: crear un script para routing (supertsocks)
Este script permite invocar a tsocks con un archivo de configuración predeterminado por el usuario (con lo que nos salteamos modificar el que está en el /etc/).
Code:
#!/bin/sh
TSOCKS_CONF_FILE=$HOME/.tsocks.conf
export TSOCKS_CONF_FILE
exec tsocks "$@"
Es necesario que tenga permisos de ejecución.
Code:
chmod +x supertsocks
¿Por qué no conectar directamente acá al servidor SSH? Porque cada vez que se ejecute el script se estaría llamando a una nueva instancia, y vemos que eso no es necesario (ni posible).
Paso 3: armando un script de conexión al servidor
Este es el paso más importante. Aquí se realiza la conexión y se levanta el túnel, por lo que es en el lado que más puede fallar (si es que el firewall analiza paquetes y filtra el ssh). Previo a continuar, pueden leer este post sobre túneles ssh de este mismo foro para más información.
Deberíamos utilizar un comando como el siguiente:
Code:
ssh -CND 1234 usuario@servidor.ssh.remoto -p puerto
- C activa la compresión
- N usa el túnel, pero no envía ningún comando
- D 1234 es el puerto del servidor SOCKS5 que armamos, y el mismo que el del .tsocks.conf
- p puerto es el puerto que está abierto a través del firewall, y el mismo que pusimos en el sshd.
Otra vez, tiene que tener permisos de ejecución.
Paso 4: ejecutar todo!
Primero se ejecuta la conexión al servidor ssh.
Luego se navega hasta el directorio del regnum (usualmente es /home/usuario/regnum).
Se ejecuta "$HOME/supertsocks ./rolauncher".
A disfrutar del juego en donde no deberían 
WindowsPara el servidor
Es preferible utilizar el OpenSSH en un Sistema Operativo de Verdad, pero todavía pueden instalar OpenSSH. BULMA tiene una muy buena guía en español.
Para el Cliente
Paso 1: conseguir las herramientas
Putty: Public Text Terminal, de aquí. No necesita instalación, y está disponible para un sinnúmero de plataformas.
Freecap, de aquí.
Paso 2: configuración de freecap
Ir a File, luego a Settings y en donde dice "Default Proxy" escriben 127.0.0.1 y de puerto el que se quiera (ej: 1234). Por último, click en aplicar.
Para agregar un programa a la lista de "proxificado", se va a File, luego a new application y se llena con lo siguiente:
Profile name: Regnum
Program path: la ruta donde esté el regnum. Generalmente es C:\Archivos de Programa\NGD Studios\Regnum Online\rolauncher.exe
Click en aplicar.
Paso 3: configuración de PuTTY
Abrir el PuTTY, ir a SSH, luego Tunnels y marcar las siguientes opciones:
Seleccionar Dynamic, Auto y escribir en Source Port el puerto proxy (el 1234 de la guía en linux).
Hacer click en "add" y dirigirse a Sessions en el panel de la izquierda. Allí se debe escribir la dirección del servidor ssh.
Paso 4: correr el juego.
Una vez que se conectan al servidor SSH a través de putty, SIN CERRARLO, hacen doble click en el ícono del programa (en nuestro caso Regnum) del Freecap (el otro programa).
Bibliografía
No la usé toda, hay algunas que busqué para que se entienda mejor.
http://onlyubuntu.blogspot.com/2008/...x-to-surf.html
https://help.ubuntu.com/6.06/ubuntu/...sh-server.html
http://www.securityfocus.com/infocus/1816
http://www.freecap.ru/eng/?p=faq
__________________
I don't have a solution, but I admire the problem.
Last edited by ArcticWolf; 08-26-2008 at 03:20 AM.
|
|
|
08-26-2008, 01:25 AM
|
#2
|
Master
Join Date: Jul 2007
Location: España
Posts: 393
|
Disculpa mi ignorancia sobre el tema, pero ¿que conseguimos con esto?
PD: no tengo la culpa de ser un ciego en informática
__________________
Retirado temporalmente
|
|
|
08-26-2008, 01:28 AM
|
#3
|
Duke
Join Date: Nov 2006
Location: 0x00CAFE
Posts: 3,366
|
Quote:
Originally Posted by manowar1992
Disculpa mi ignorancia sobre el tema, pero ¿que conseguimos con esto?
PD: no tengo la culpa de ser un ciego en informática 
|
Que yo puedo jugar en la universidad.
EDITO:
En realidad que te podés saltar cualquier firewall que bloquea puertos, e incluso arreglar el problema de conectarse con una IP latinoamericana. El juego reconoce la ip del server ssh, no de tu máquina, por lo que donde esté la máquina servidora de ssh el juego va a pensar que estás.
__________________
I don't have a solution, but I admire the problem.
|
|
|
08-26-2008, 01:39 AM
|
#4
|
Initiate
Join Date: Jun 2007
Location: Medenet, Ignis.
Posts: 167
|
Xephandor ¿este era el plan que me habias contado hace unas semanas por pms? Veo que te salio bien...
¿Para cuando la guia de windows?
__________________
Net el Brujo Ignis Ignite
|
|
|
08-26-2008, 01:45 AM
|
#5
|
Count
Join Date: May 2007
Posts: 1,007
|
Que tal la latencia y la perdida de paquetes udp? La perdida de udps no deberia de ser significativa pero la latencia podria subir bastante. La verdad que no probe nunca y tengo curiosidad
__________________
Takola Barbara ··· Aker Medico ··· Iraia Aprendiz de Thanus ··· Zakilixut Gigolo de oficio, tirapalillos de aficion ··· Kinki Guardian de las lindas elfas
Campurriano Inmerso en los secretos de la nigromancia ··· Cochinilla Enfermera sexy ··· ??? Trituramandados
Sex clan
|
|
|
08-26-2008, 01:53 AM
|
#6
|
Duke
Join Date: Nov 2006
Location: 0x00CAFE
Posts: 3,366
|
Quote:
Originally Posted by -Net-
Xephandor ¿este era el plan que me habias contado hace unas semanas por pms? Veo que te salio bien...
¿Para cuando la guia de windows? 
|
Para cuando consiga una computadora con windows :P
Ahora edito
__________________
I don't have a solution, but I admire the problem.
|
|
|
08-26-2008, 02:02 AM
|
#7
|
Count
Join Date: Oct 2006
Location: ...Perrita Regalona...
Posts: 1,501
|
Xephandor, por favor... tomame como tu esposa... sos un groso!
__________________
Lesty - ::: Cazadora de Yaara Heren Hyarmenor ::: YA no se cuantos Años!!
Ha vuelto la única, auténtica y REAL REINA del RO!.
|
|
|
08-26-2008, 02:02 AM
|
#8
|
Duke
Join Date: Jan 2007
Posts: 3,939
|
Quote:
Originally Posted by Xephandor
Para cuando consiga una computadora con windows :P
Ahora edito 
|
hola desde un pc con windows ^^ (y con un firewall muy restrictivo entre internet y yo...)
__________________
"Nunca un científico ha quemado a un religioso por afirmar a Dios sin pruebas". Manuel Toharia
"uno empieza a darse cuenta que eso de no hacer ejercicio, comer y beber como si fuese la ultima cena y mantener la figura ya no existe...". Maryan
|
|
|
08-26-2008, 02:04 AM
|
#9
|
Initiate
Join Date: Mar 2007
Posts: 240
|
Andas aburrido Xeph?
Sos un grande maestro!!!!
|
|
|
08-26-2008, 02:09 AM
|
#10
|
Pledge
Join Date: Oct 2007
Posts: 8
|
naa No jodas? Decime que jugaste al regnum en la facu..y mañana te estamos levantando un monumento
|
|
|
Thread Tools |
|
Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
All times are GMT. The time now is 04:35 PM.
|