Editado 18-04-2017 12:42
Editado 18-04-2017 12:42
Hola.
Tengo un router HGU MitraStar GPT-2541GNAC, en el que ya he abierto con éxito varios puertos (SSH, HTTP y otros). El problema es que, a la hora de abrir el puerto de HTTPS (443), el router no funciona correctamente. La mayor parte de las veces la conexión se cae por timeout, pero ha habido veces en las que ha respondido con el panel de administración del propio router.
Si abro cualquier otro puerto externo, como por ejemplo el 8443, y lo apunto al 443, la conexión se establece con éxito. Por tanto, deduzco que el problema es que el router no sabe diferenciar entre las conexiones HTTPS de administración y las conexiones HTTPS NAT, independientemente de si se accede desde la interfaz interna o desde la externa.
Había pensado en cambiar el puerto HTTPS de la interfaz de administración, pues ese me da igual si no es el estándar, pero no encuentro la opción.
¿Hay alguna manera de poder aplicar NAT al puerto de HTTPS (443)?
Buenas @lp42
Que te refieres exactamente con hacer NAT al puerto 443?? A un port forwarding?? a mapear el 443 a la red interna?? Si es eso, asegúrate que en el FW no hay reglas de filtrado para el 443. El puerto 80 cambia cuando se reasigna en la interfaz web, pero no sé si el 443 también lo hará o no.
No tiene nada que ver con no saber diferenciar X de Y. las reglas forward miran el puerto de destino, nada más, si está mapeado, lo envía a donde sea. Creo recordar que en el Mitrastar puedes mirar directamente iptables desde la shell reducida, o sino incluso desde la shell completa para echar un ojo, no tengo ahora mismo el Mitrastar para decirte (ASKEY en este momento), esta tarde quizás tenga acceso a uno y pueda decirte algo mucho más seguro si quieres.
Y no, no puedes reasignar el puerto de escucha así como así del servidor web del Router.
Hola @Theliel.
Efectivamente, quiero que el puerto 443 del router tenga un port forwarding al puerto 443 de una máquina interna. Ya lo he hecho con el puerto 80, para HTTP, pero no se ha reasignado el puerto HTTP de la interfaz de administración del router. Ahora, si accedo al puerto 80 desde la red interna, empleando la IP interna, me aparece la interfaz de administración del router. Por el contrario, si accedo desde el exterior me responde mi servidor web. Si accedo al puerto 80 desde la red interna, pero empleando la IP externa, es una lotería: a veces me responde el servidor web, a veces la conexión se cae por timeout.
Ahora que has mencionado el firewall, he visto que hay reglas para abrir el puerto 443 al exterior desde ciertas IPs, que entiendo son de Movistar, para administración remota. Supongo que eso, combinado con que los puertos de administración no se reasignan si se añade una regla de NAT/forwarding, es lo que provoca que el puerto 443 no se pueda mapear bien.
¿Estoy en lo cierto? ¿Hay algo que pueda hacer al respecto? Es crítico que pueda mapear este puerto.
Usando la IP interna del servidor y puerto 80, te reenvía a la interfaz del Router?? No puede ser, querrás decir que usando como es natural la IP del Router 192.168.1.1 y puerto 80 te lleva al Router, lo cual es lógico, al igual que es lógico que IP extear vaya al servidor interno. Sobre usar en LAN la IP externa, es normal también que se confunda, se debe al uso de NAT Loopback. Es imposible hacer un NAT Loopback perfecto, y en este caso cuando mapeas el puerto 80 del Router, mapeas el remoto, no el local del Router, que por lo que dices sigue manteniendo el 80, y debe de reasignar solo el externo.
Los filtros en filter/rules del FW en teoría, y repito solo en teoría, deberían de aplicarse sólo a servicios dirigidos hacia el Router, tabla input en iptables, pero dependiendo de como se hayan/estén aplicando, podrían estar filtrando igualmente el tráfico forward. De ahí a curarse en salud y eliminarlas.
@ThelielEfectivamente, quería indicar que los comportamientos del puerto 80 son los esperados, únicamente quería recalcar que no reasigna el puerto, y que el puerto 443 no se comporta igual. Lo que no ha sido normal y que sí que he experimentado es que una de las veces que accedí al puerto 443 empleando la IP externa, con el forwarding apuntando a un servidor interno, me mostró la interfaz de administración del router. Ahora que lo dices, no estoy 100% seguro de si, cuando ocurrió eso, estaba accediendo desde una red externa o si simplemente ha sido un error de NAT Loopback. Creo que era desde una red externa, pero trataré de reproducirlo.
Voy a hacer un nuevo backup de la configuración actual del router, para poder modificar las reglas del firewall tranquilamente, que con estas cosas uno nunca sabe cuando puede echarse a sí mismo por accidente.
Por cierto, no te he dado las gracias aún. Muchas gracias 🙂 A ver si hay un final feliz para esta historia 😛
Buenas compi,
Por desgracia en el backup no vas a ver gran cosa, las reglas internas aplicadas no aparecen, en el backup solo tienes lo que ves en la interfaz Web. También es relativamente lógico, si apareciesen en el FW absolutamente todas las reglas creadas, la mayoría se lo cargaría casi con solo mirarlo 😉
Me da a mi que será posiblemente más un error de nat loopback, es casi imposible encontrar una implementación que no falle, muchos Routers de alta gama, para que te hagas una idea, implementan mas de un NAT loopback, diferentes implementaciones que pueden ser mejor o peor dependiendo del escenario, dispositivos... por eso te digo que si aparece algún problemilla accediendo desde LAN a través de la IP externa... eso huele a problemas de nat loop.
Hola,
Dejo un vídeo de como abrir los puertos en el HGU.
https://www.youtube.com/watch?v=I0YpPQd8VH0&t=16s
Un saludo.
Hola.
Al final conseguí abrir el puerto, pero no tiene ningún tipo de sentido que ahora funcione y antes no. No me ha dado tiempo a diagnosticar por qué era, pero asumo que ha sido un bug.
Lo que hice fue:
- Hacer un backup de la configuración del router a través de administración avanzada (si se hace desde ahí el backup es completo, incluyendo entradas de firewall)
- Cambiar todas las autorizaciones del firewall a IPs de Movistar de permitidas a bloqueadas
- Bloquear el acceso al panel de administración a través del puerto 80 (HTTP), para que las credenciales de administración del router siempre vayan por el 443 (HTTPS), y nunca viajen en claro
- Cambiar la redirección de TCP a TCP + UDP y de vuelta a TCP
Ninguno de los cambios debería de haber afectado a la redirección, por eso lo del bug.
En cualquier caso, gracias por la ayuda prestada, pues con el cacharreo he terminado blindando el router.
Editado 06-05-2018 11:35
Editado 06-05-2018 11:35
Ya tiene cierta edad este hilo, lo siento, pero estoy tratando (sin éxito) bloquear el acceso a la administración del router a través de http en el cortafuegos. No lo consigo y me interesaría mucho con que regla lo ha conseguido.
He bloqueado el puerto 80 con y sin IP de destino y puedo acceder sin problemas con http.
Estaría muy agradecido si me pudiese dar un consejo.
De paso otra duda que tengo: ¿Sería posible introducir un certificado de letsencrypt y como se podría hacer?
Gracias por adelantado.
Un saludo, Klaus
Buenas @klabog
Te refieres a acceso externo o interno?? Desde WAN o desde LAN??
Por defecto el acceso externo está bloqueado y sólo permitido a algunos rangos de Movistar. Es decir, las reglas que aparecen en el Firewall por defecto son relativas a la interfaz pppoe, son para WAN.
Por defecto igualmente, se permite todo el tráfico LAN hacia el Router. Esto también se puede modificar de forma sencilla. Pasa por crear una regla en Filters en el Firewall para tráfico entrante pero no en la interfaz WAN, sino en la interfaz LAN (br0 por lo general), y denegar el tráfico que vaya hacia el puerto 443 o el que se quiera.
Al margen de que pudieses insertar un certificado en el Router para que este lo usase para su interfaz Web, jamás podrías validarlo por nadie, ni comprado ni con Let's Encrypt, a menos que tuvieses contratada una IP fija y asociado un dominio al Router. Un certificado se expide hacia un dominio público específico generalmente bajo una IP dada. Si coges por ejemplo cualquier certificado válido y lo metieses dentro, absolutamente todos los navegadores se quejarían igualmente y darían la web como insegura y peligrosa por usar un certificado que no corresponde.
En el mejor de los casos lo que podrías hacer sería generar tu propio certificado e instalarlo en el Router, pero eso implicaría igualmente instalar el CA propio que los ha firmado en los navegadores, más sencillo... simplemente añadir la excepción del certificado de Movistar/Mitrastar y listo
Editado 06-05-2018 20:26
Editado 06-05-2018 20:26
Buenas Theliel:
Me refiero al acceso por WAN. Me encuentro cada año 3 meses en Alemania y como tengo mi NAS aquí quiero poder tener acceso al router - por si acaso tengo que reconfigurar algo.
Si me dices que todo está bloqueado por defecto me quedo algo más tranquilo.
Como en Alemania tampoco tengo una IP fija tendré que abrir un puerto 443 sin IP. Me hubiera gustado poder acceder por VPN, pero parece que nuestro router no tiene un servidor VPN integrado. Telefónica me deja sorprendido con la forma que montan los routers. La penúltima vez que me arreglaron la linea, el técnico me decía que la única forma de acceder al router sería por el portal Alejandra - lo del acceso directo al interface no mutilado por el puerto 8000 ni me lo creía (aunque supongo que sólo era para disimular). Y ahora con el router "de última generación" y fibra óptica ni siquiera facilitan un servidor VPN y si no me acuerdo mal, declaran el acceso directo al router -sin portal Alejandra- el método preferido.
Creo que me configuraré un Raspberry como servidor VPN y accedo así directo a la LAN. Me parece más seguro. Espero que consigo hacerlo. Probablemente necesitaré ayuda. ¿Puedo contar contigo? El Raspberry con Debian Stretch y OpenVPN no será el problema, pero abrir el cortafuegos y pasar el trafico hacia el OpenVPN sin crear un hueco de seguridad puede serlo.
No entiendo muy bien las reglas del cortafuegos. ¿Si introduzco IP y puerto de destino en la regla ya no hace falta crear un servidor virtual para desviar el trafico al servidor VPN o tengo que hacer las dos cosas?
Quizás podríamos crear un pequeño HowTo. Pienso que podría ser util para más gente.
Volviendo al MitraStar GPT-2541GNAC. En Alemania tengo la linea igualmente contratada con Telefónica, pero allí me ofrecían un router de lo más exquisito (pagando, claro -por defecto te dan una mi...a): el FritzBox 7490. No sólo tienes la posibilidad de configurar dos lineas más VOIP con otros proveedores en el mismo router, también puedes meter el certificado de letsencrypt con un clic (se renueva automáticamente). Incluye servidor VPN, etc. etc.
Con éste router -sin más- puedo conectarme al LAN en Berlín, puedo configurarlo, desviar mis llamadas alemanes a través de SIP a mi teléfono IP aquí (en Alemania ni siquiera necesito un segundo teléfono) y puedo llamar con pass-through desde aquí con SIP desde mi teléfono de Berlín. Que nostalgia ...
Un saludo, Klaus
Buenas @klabog
Hombre, para acceso al Router por interfaz Web lo ideal sería remapear el puerto 443 a otro, pero aunque algunos Routers se lo tragan, no es algo que sea muy bueno. De cualquier modo con una buena contraseña no deberías de tener muchos problemas, aunque obviamente siempre es un riesgo aunque sea bajo. De todos modos una de las cosas que más valoro positivamente de Movistar es precisamente el control que suelen dar de sus equipos, no el que quisiese, pero a años luz de lo que otros ISP hacen.
Sobre la posibilidad de un servidor VPN... potencia tienen, pero son equipos residenciales, y ojo que yo mismo uso mi propio Router y tengo configurado mi propio servidor VPN en mi Router, pero entiendo que no es algo que sea necesario en un ámbito doméstico, quizás tengamos suerte algún día y lo vemos implementado.
Respecto montar una rasp, perfecto, tendría que ir bien. Redirecciones de puertos y otros, la verdad es que la configuración es mínima para OpenVPN, la facilidad además de poder levantarlo en cualquier puerto y ya sea por UDP/TCP, lo hace casi inmediato, es una apertura de puertos y poco más.
Sobre el Firewall es confusión común, parte por falta de conocimientos a veces, pero también porque aun teniéndolos las interfaces Webs llevan a engaños. Siempre uso la misma imagen para ilustrar como funciona, no es la más completa ni rigurosa, pero se puede ver perfectamente como va la cosa:
Es un esquema del flujo básico de los paquetes que circulan por el Router. Un paquete llega a una interfaz del Router, así que lo primero que hace ese paquete es pasar por la candena Prerouting de algunas tablas, como mangle o NAT. Aquí se toma la primera decisión en función de las cadenas Prerouting, y se decide si dicho paquete va dirigido hacia el propio Router o el destino es otro equipo, otra red. Si es para el propio Router, se pasa a la cadena INPUT, si es para otro equipo/red, se pasa a la cadena Forward. Sea INPUT o FORWARD el paquete pasará por la correspondiente cadena de la tabla correspondiente. Si el paquete sale o lo genera el propio Router, va a parar directamente a OUTPUT, y ya sea desde OUTPUT o desde FORWARD, pasa a POSTROUTING.
El problema es que las interfaces Web como entenderás exponen un conjunto muy limitado de funciones, y es lógico. Si ya tienen problemas con implementar 3 cosas por Web, te imaginas tener que lidiar con una interfaz web que permita gestionar cada una de las tablas y cadenas?? No es viable. Que es lo que se hace?? En los routers residenciales por regla general simplifican todas las tablas/cadenas en:
1. Port Forwarding / Virtual Server
Reenvío de puertos es un término un poco desafortunado que se ha usado de siempre... Cuando hacemos esto lo que queremos es enviar el tráfico que va de una interfaz del Router a otra, en función de ciertas reglas. Es decir, decirle al Router que cierto tipo de tráfico será tráfico FORWARD. Si miras el esquema básico, eso significa alterar al menos la cadena Prerouting de la tabla NAT. Y es lo que hace la interfaz Web ni más ni menos. Cuando creamos un mapeo de puerto lo que el Router hace es crear una regla iptable con los parámetros que nosotros queremos. Imagínate que queremos abrir el puerto 443 a la IP local 192.168.1.2 para la interfaz WAN PPPoE (Internet). El Router lo que realmente hace es esto:
iptables -I PREROUTING -t nat -i ppp0 -p tcp -m tcp --dport 443 -j DNAT --to-destination 192.168.1.2:443
Es decir.... añade a la cadena prerouting un "salto" cuando entre un paquete por la interfaz pppoe que quiere acceder al puerto 443, y lo manda a la IP especificada al puerto especificado. Esto se puede complicar lo que quieras, Podría no especificar interfaz de entrada y que se aplicase a todas, podría usar un rango de puertos, podría... pero en esencia la interfaz web de virtual server hace esto, que es lo que el 99% veces de los casos queremos hacer.
2. Filters
Aquí es donde suele existir la confusión. Algunos lo llaman Filtros, otros Firewall, otros Reglas del FW... en realidad lo más correcto es llamarlos efectivamente Filtros, porque realmente lo que hace esto es modificar la tabla filter. Pero hay un "problema"... la cadena filter la encontramos en diferentes cadenas, la encontramos en INPUT, en FORWARD y en OUTPUT. Por simplificación, la inmensa mayoría de los fabricantes al implementar este menu en la interfaz web lo que nos permite es modificar sólo las cadenas INPUT y OUTPUT de filter. Técnicamente no hay problema de que se aplicase también a FORWARD, pero dado que no es nada normal que el usuario necesite esto, se suele omitir. Generalmente el comportamiento de un Router es permitir todo el tráfico que sale hacia Inet, y bloquear todo lo que entra que no sea solicitado antes. Con Filters creamos excepciones, ya sea para bloquear o permitir. En los equipos que filter sólo actua sobre INPUT o OUTPUT, significa que sólo se tendrán en cuenta para el tráfico que entra o sale del propio Router, no es tráfico FORWARD. Por ejemplo, en tu caso, si quieres poder acceder a la interfaz de tu Router desde fuera, necesitas que en Filter exista una excepción que permita el tráfico entrante por la interfaz pppoe, que vaya al puerto 443. Y y tienes que permitirlo para cualquier IP de origen y cualquier ip de destino, recuerda que el Router tiene asignada una IP publica así que...
Esto se podría aplicar igual para el tráfico que sale del Router o incluso en algunos equipos tambien para filtrar el tráfico FORWARD. Imagina que quisiésemos crear una excepción para denegar que un equipo de la red local pudiese acceder a que te digo yo... un servidor Web concreto. Ese tráfico ya no sería INPUT/OUTPUT, sería FORWARD. Pero como te digo por lo general, los equipos residenciales no permiten este tipo de filtros, por simplificar. En cualquier caso, si miras el esquema, verás que antes de que se aplicase la tabla INPUT y la cadena Filter, el Router ya decide si es FORWARD o INPUT, si es FORWARD un filtro INPUT jamás se aplicará, y viceversa.
Es posible perfectamente instalar un certificado Let's Encrpt en un Router incluso doméstico, pero requiere una serie de requisitos que hacen que sea "complicado" en cierto modo. Para poder obtener un certificado válido, lo primero que requieres es un dominio. Eso te obliga o a tener un dominio propio y que apunte al Router, u otra solución que están usando algunos, como hace ASUS por ejemplo, y es que el propio Router tiene un servicio de DDNS propio gestionado por el fabricante. En esos casos, dado que el Router tiene su propio dominio dinámico, es factible tener un certificado, que será válido siempre y cuando accedamos desde el propio dominio dinámico.
En la inmensa mayoría de Routers residenciales es posible configurar servicios tipo DDNS, pero no está integrado de forma interna, son servicios externos. Y a eso ni que contar por supuesto, la posibilidad de instalar un certificado propio ;).
No me gusta el FritzBox, no porque sea malo, sino porque cuando se requiere algo más específico, lo mejor es irte al mercado y coger algo que se ajuste perfectamente a tus necesidades, que por suerte tenemos mucho donde escoger.
Editado 08-05-2018 10:30
Editado 08-05-2018 10:30
Hola @Theliel,
gracias por el amplio mensaje y las explicaciones. En teoría no tengo problemas y no es la primera vez que configuro un cortafuegos. Lo que me cuesta es hacerlo en la interface de nuestro router. La terminología a veces no está muy clara.
Sólo unas pocas palabras como respuesta a tus argumentos.
Lo del dominio que es necesario para el let's encrypt no es un problema. Para acceder al router en casa de todas formas necesitas activar el DDNS con lo que automáticamente tienes un dominio. De hecho lo he instalado en mi NAS sin problemas (lo mencionaré más adelante).
Que no te guste el Fritzbox porque haya otros routers que se adapten mejor a tus necesidades no lo entiendo, pero aya tu. Como el Fritzbox tiene tantos componentes incluidos por defecto me hace un servicio perfecto. Además tienen un software de laboratorio que adelanta los desarrollos futuros donde incluyen muchas veces las ideas de los que participan en el programa.
Ayer he conseguido poner en marcha un Raspberry PI 2 con Debian Stretch como servidor VPN. Parece que funciona bien, pero no consigo establecer una conexión con el cliente de mi portátil. Es algo complicado hacer las pruebas desde casa porque no sé hasta que punto se lía todo porque lo hago desde dentro de la misma red y si lo entiendo bien accedo a través de mi dominio DDNS con la misma IP que tiene el router. Posiblemente haya conflictos.
He creado en el router un servidor virtual con la IP del Raspberry y en el cortafuegos he abierto el puerto 1194 (como me indican el HowTo del VPN) para TPC con la IP del Raspberry (destino).
Ayer me enteré que mi NAS (QNAP TS451A) también me permite configurar un servidor VPN. Con el podré acceder también a la LAN desde el exterior. Intentaré instalarlo hoy.
Ya te contaré.
Un saludo
Buenas @klabog
Sí, algunos NAS permiten crear servidores VPN desde hace tiempo, aunque no son tan configurables y manejables, evita el uso de más cacharros.
Sí también, la terminología de los Routers es cuanto menos complicada. Incluso cuando son más o menos correctos en descripciones y nombres, a veces quieren decir una cosa y hacen otra, es un caos. De todos modos te diré que hay apartados peores, intenta echar un ojo a las opciones QoS de diferentes Routers, y ves de todo, o sabes perfectamente cada parámetro y su repercusión, o puedes pegarte un tiro. Y repito, eso siempre en el mejor de los casos, si los desarrolladores son poco escrupulosos, ya te encuentras de todo.
Suerte con el bicho compañero.
Hola @Theliel,
la suerte no se me acerca. Me parece que necesito que alguien me explique algunos detalles del router HGU MitraStar GPT-2541GNAC. ¿Que son los distintos interfaces ppp0.1, veip0.2 y veip0.3? Supongo que recibimos con el veip0.2 el streaming de Movistar TV. El veip0.3 parece que no está activado. ¿Estos interfaces podemos activar para ppp?
Parece que tengo que crear una ruta estática en el rango de 10.x.x.x entre servidor vpn y router. Esto todo sobrepasa mis capacidades. El NAS con el VPN me permite activar una interface virtual en este rango pero no se como hacerlo en el router. ¡Socorro! Me quedan dos semanas para configurar un servidor vpn en mi lan. Luego estaré tres meses fuera y necesito acceder a mis datos a través de Internet con seguridad.
Estaría muy agradecida por cualquiera ayuda.
Un saludo Klaus
Buenas @klabog
Movistar envía todo por su fibra, pero por una gestión mucho mejor y poder independizar servicios unos de otros, tagea (etiqueta) el tráfico de cada cosa, Internet usa un ID 6, TV usa un ID 2 y Teléfono usa un ID 3. Pero esos números hacen referencia como digo a la "etiqueta" de los frames.
Para que el Router pueda acceder a dichos servicios, levanta una interfaz WAN diferente para cada uno de ellos, "filtrando" su contenido gracias a ese marcado.
Interfaz ppp0.1 es la interfaz WAN de acceso a Internet, esta interfaz levanta un cliente PPPoE (de ahí su nombre) "escuchando" sólo el tráfico etiquetado con VLAN ID 6.
Interfaz veip0.2 por lo general es la interfaz WAN de acceso a VoIP. Ten en cuenta que el número de la interfaz no tiene absolutamente nada que ver con el VLAN ID al que está asociado. Si quieres saber al 100% que interfaz es, mira el VLAN ID que tiene, si es 3, es VoIP. Esta interfaz se configura por lo general de forma sencilla por DHCP
Interfaz veip0.3 es por lo general la interfaz WAN de acceso a TV. En este caso la interfaz se configura de forma estática para poder acceder a los servicios de televisión.
Crear una ruta estática es muy fácil, pero hay que saber que ruta, es decir, para quien es la ruta. Una ruta le dice a un equipo por donde tiene que mandar ciertos paquetes dependiendo de las redes de destino. Una ruta por lo general se compone de:
La red a la que nos queremos dirigir (red y máscara), la puerta de enlace que se usará para ello, y la interfaz. Eso le dice al NAS o al Router o al equipo donde dirigirse y por donde para ir a un destino específico. Por ejemplo, tu PC la ruta por defecto que tendrá como red destino 0.0.0.0 (es decir, cualquier destino que no se especifique en otra ruta), que usará para ello de puerta de enlace la puerta de enlace que tenga configurada la interfaz de red, y que lo hará por la interfaz de red que esté como principal. Para VPNs es necesario para saber que tráfico hay que enviar y por donde. Por ejemplo el NAS si hace de servidor VPN tiene que saber dependiendo de que destino se quiere, si va por VPN o no.