Skip to main content

COMO: Cambiar el puerto seguro de la Web GUI de IPCop

::[INTRO]::

Describo en este mini-mini-howto, como cambiar el puerto seguro de la Web GUI disponible para la administración remota de nuestra maquina basade en IPCop. Para los que no sabemos, IPCop es un Firewall basado en Linux, se puede conseguir en http://www.ipcop.org.

IPCop dispone de una GUI (Graphical User Interface) para la administración remota del sistema. Esta GUI está hecha en perl con los módulos de CGI, se soporta sobre Apache como servidor Web para ofrecer todos sus servicios. Desde la LAN podemos ingresar a esta GUI haciendo una solicitud http desde nuestro browser dirigida al puerto 81, por ejemplo http://10.1.0.253:81 sería la manera correcta de solictar a la maquina 10.1.0.253, la cual tiene IPCop instalado, el servicio de la Web GUI. Cuando desde la LAN hacemos la solicitud http al puerto 81, IPCop hace una redirección, utilizando un código de estado 302 en el protocolo a otra localización. Lo realmente importante de lo anterior, es que cuando se hace esta redirección, el protocolo cambia a https y el puerto pasa del 81 al 445. Hasta aquí no hay problema, el problema es que desde afuera de la LAN, las solicitudes a la Web GUI de IPCop tienen que ir dirigidas exactamente al puerto 445 utilizando https.

En este mini-mini-howto vamos a cambiar el puerto seguro del servidor httpd, para que no escuche en el 445 sino en el 441.

::[ANTECEDENTES]::

Algunos ISPs pueden filtrar el tráfico sobre el puerto 445 debido a que era el puerto que utilizaba el worm Sasser para repartirse.

::[HOWTO]::

  1. Edite el archivo /etc/httpd/conf/httpd.conf y sustituya los siguientes valores, por los que se indican a continuación:

    Línea No. 23, sustituya:

    Listen 445

    Por

    Listen 441

    Línea No. 113, sustituya:

    <VirtualHost _default_:445>

    Por

    <VirtualHost _default_:441>
  2. Edite el archivo /var/ipcop/header.pl y sustituya los siguientes valores por los que se indican a continuación:

    Línea No. 148, sustituya:

    print "Location: https://$ENV{'SERVER_ADDR'}:445/...

    Por

    print "Location: https://$ENV{'SERVER_ADDR'}:441/....
  3. Ajuste sus reglas de acceso externo a la maquina para permitir las conexiones entrantes al puerto 441.
  4. Reinicie su maquina basada en IPCop.

::[NOTAS]::

  • Este mini-mini-howto aplica para la versión 1.4.5 de IPCop.
  • Desde la LAN las peticiones se siguen haciendo vía http al puerto 81.

::[FINAL]::

No hay nada que decir por ahora. ;)