Si encuentra que el puerto 80 es un riesgo de seguridad en su red, puede cambiar el puerto de escucha de Apache a algo no estándar.
Como sabe casi cualquier administrador de TI, el puerto predeterminado del servidor web es 80. Y eso es genial. Pero la cuestión es que los piratas informáticos saben que el puerto 80 es el predeterminado y lo dirigen con facilidad. ¿Qué pasaría si no tuviera que dejar el servidor web Apache vulnerable a los ataques del puerto 80? Teniendo en cuenta que puede cambiar fácilmente la configuración de modo que sus hosts virtuales Apache escuchen puertos no estándar, tiene mucho sentido para cualquiera que tenga problemas con los ataques del puerto 80.
La única advertencia de esto es que cuando cambie el puerto predeterminado, todos los navegadores tendrán que apuntar a ese puerto específico, de lo contrario, cualquier host virtual que use el puerto no predeterminado no se procesará.
También es un buen truco para tener bajo la manga cuando tiene un solo servidor de Apache que aloja sitios que pueden requerir el uso de diferentes puertos para diferentes servicios. Por ejemplo, si tiene un sitio para clientes en el puerto 80 y desea ofrecer un sitio para clientes en el puerto 8081. Con Apache, eso no solo es posible, es fácil.
Déjame mostrarte cómo puedes cambiar el puerto de Apache. Lo demostraré en Ubuntu Server 18.10, pero también daré indicaciones sobre cómo se realiza el proceso en los servidores de tipo Red Hat y Fedora.
VER: Elegir su estrategia de salida de Windows 7: cuatro opciones (TechRepublic Premium)
Lo que necesitarás
Lo único que necesita es un servidor LAMP en ejecución y una cuenta de usuario con privilegios de sudo. La porción "L" de LAMP podría ser Ubuntu, SUSE, Red Hat, Debian, Fedora Server o casi cualquier distribución de Linux.
Cómo agregar el nuevo puerto
Lo primero que haremos es agregar al puerto Apache de escucha predeterminado. Para hacer esto, inicie sesión en su servidor Linux y emita uno de los siguientes comandos:
- Para servidores basados en Ubuntu / Debian: sudo nano /etc/apache2/ports.conf
- Para servidores basados en Red Hat: sudo nano /etc/httpd/conf/httpd.conf
En el archivo ahora abierto (Figura A) agregue Listen 8081 bajo la línea Listen 80.
Figura A
El archivo ports.conf en Ubuntu Server.
"data-credit =" "rel =" noopener noreferrer nofollow "> El archivo ports.conf en Ubuntu Server.
Guarde y cierre el archivo.
Cómo configurar el host virtual
Ahora necesitamos configurar nuestro host virtual para escuchar el nuevo puerto. Lo demostraré con el host virtual predeterminado, pero puede modificarlo para que se ajuste a cualquier host virtual que haya agregado a Apache. Abra el archivo de host virtual con el comando:
sudo nano /etc/apache/sites-enabled/000-default.conf
Para los sistemas basados en Red Hat, los archivos de host virtual se encuentran en /etc/httpd/conf.d/.
En la parte superior del archivo, verá el comienzo de la directiva:
Cambie esa línea a:
Guarde y cierre el archivo.
Reinicie Apache con el comando:
sudo systemctl restart apache2
O para sistemas basados en Red Hat:
sudo systemctl restart httpd
Ahora debería poder apuntar un navegador a http: // SERVER_IP: 8081 (donde SERVER_IP es la dirección IP del servidor de alojamiento) para ver el sitio de bienvenida de Apache (Figura B), o la página de bienvenida de su host virtual.
Figura B
Una página familiar.
"data-credit =" "rel =" noopener noreferrer nofollow ">
Trabajo extra con Red Hat
Si su distribución de elección está basada en Red Hat, es posible que deba realizar un poco de trabajo extra. Para que Apache se vincule al nuevo puerto, primero debe instalar la aplicación policycoreutils. Instale el software con el comando:
sudo yum install policycoreutils
Una vez que el software está instalado, agregue las nuevas reglas SELinux para el puerto 8081 con los siguientes comandos:
sudo semanage port -a -t http_port_t -p tcp 8081 sudo semanage port -m -t http_port_t -p tcp 8081
Después de ejecutar los comandos anteriores, reinicie apache con el comando:
sudo systemctl restart httpd
Ahora debería poder ver su host virtual, a través del puerto 8081, tal como lo proporciona su servidor Apache basado en Red Hat.
Y eso es todo lo que hay para servir sitios web en un puerto no estándar. Por supuesto, no tiene que usar el puerto 8081. De hecho, puede usar casi cualquier puerto que necesite, siempre que no entre en conflicto con un puerto utilizado por otro servicio.
Ver también
"data-credit =" Imagen: Apache "rel =" noopener noreferrer nofollow "> Imagen: Apache