Apache, No-Ip y la interfaz nas0

Imagen de Boquepa
0 puntos

Hola a todos los ubunteros. Aquí va mi pregunta: he decidido montar un servidor casero para mostrar un par de páginas web. Navegando he empezado a aprender un poco cómo tenía que hacer todo esto así que ahora mismo tengo

  • Módem usb Comtrend ct-351 configurado y corriendo bajo la interfaz nas0
  • El Apache 2.2 instalado
  • El registro de un dominio no-ip hecho
  • Me he bajado el programa que actualiza el direccionamietno a mi ip dinámica.
  • Tras eso he abierto el httpd.conf de Apache y en la línea ServerName he puesto mi dominio no-ip.
  • El servidor está escuchando el el puerto 80.

Meto la dirección en el navegador y entra perfectamente, pero claro, eso desde mi equipo, no desde fuera, que no es accesible.

Sigo navegando y me encuentro con que debo tener abierto el puerto 80. Yo ni había pensando que con un módem USB tuviese que abrir puertos, pero parece ser que sí. Me aptitudo el nmap y hago

nmap localhost

lo que me da una respuesta como esta:

PORT STATE SERVICE
631/tcp open ipp

Así que busco cómo abrir el puerto. Y encuentro que lo haga modificando las iptables, así que voy a ello y tecleo

sudo iptables -A INPUT -i nas0 -p TCP --dport 80 -m state --state NEW

Tras eso hago el nmap al localhost y me sale

PORT STATE SERVICE
80/tcp open http
631/tcp open ipp

Es decir, ya está abierto. Si hago el nmap a mi dominio no-ip sale

Not shown: 1696 closed ports
PORT STATE SERVICE
80/tcp open http

Pero sigo sin poder verlo desde fuera. Tambien he abierto el UDP, por si acaso, con

sudo iptables -A INPUT -i nas0 -p UDP --dport 80 -m state --state NEW

Pero sigue sin ir. SI saco la info de iptables con iptables -nL recibo algo así:

Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
LOG udp -- 0.0.0.0/0 0.0.0.0/0 udp dpts:0:1023 LOG flags 0 level 4
LOG tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpts:0:1023 LOG flags 0 level 4
DROP udp -- 0.0.0.0/0 0.0.0.0/0 udp dpts:0:1023
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpts:0:1023
LOG tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02 LOG flags 0 level 4
DROP tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x17/0x02
DROP icmp -- 0.0.0.0/0 0.0.0.0/0 icmp type 8
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 state NEW
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 state NEW
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80
ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:80
tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 state NEW

Chain FORWARD (policy DROP)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Tanto 80 abierto y nuevo es porque he ido metiendo diferentes líneas :P Bueno, el caso es que tengo abierto el puerto de 80 maneras diferentes y no funciona.

He leído tambien que debo poner un directiva VirtualHost en el conf de Apache. Lo hago así:

NameVirtualHost *:80
<VirtualHost *:80>
    DocumentRoot "/usr/local/apache2/htdocs"
    ServerName nombre.no-ip.org
    DirectoryIndex index.html index.htm index.shtml index.php
</VirtualHost>

Y tampoco funciona. Mi pregunta está clara, ¿qué pasa? ¿puede ser cosa de la interfaz nas0? ¿puede ser cosa de tener módem usb y no router?

Os aseguro y requete aseguro que he buscado y navegado por mil sitios, pero sois mi última oportunidad. Espero ansioso vuestras respuestas.

Saludos

Imagen de pablo_g
+1
0
-1

Si no sabes de iptables puedes instalar Firestarter y abrirlo por ahi. Estas usando INPUT, y seria con INBOUND, ademas no creo que tengas que especificar nas ni state ni state new. Fijate que si instalas Firestarter te crea la regla como te digo y funciona.  Tampoco te ocupes de que sea router, con bridge anda ok. Tampoco tiene que ver lo de virtualhost, aunque no esta mal si lo quieres cambiar, pero es mas cuando usas otro puerto, por ej si usas ssl.

+1
0
-1