Aunque la seguridad de Apache Tomcat ha mejorado significativamente a lo largo de los años, esto no significa que no se pueda mejorar. Apache Tomcat es un servidor de aplicaciones Java gratuito de código abierto que viene con una funcionalidad increíble desde el primer momento. En este artículo, los expertos en cursos de ciberseguridad lo guiarán en varias formas de proteger el servidor Apache Tomcat.
Los métodos que se analizan en este artículo son los más adecuados para un entorno de producción, ya que es posible que los necesite durante el desarrollo o que no los necesite.
1 – Eliminar información sobre el servidor
Una forma fácil de mejorar la seguridad del servidor Apache Tomcat es eliminar el banner del servidor de la respuesta HTTP. Si se abre el banner, puede emitir la versión de Tomcat que usa, lo que facilita la recopilación de información sobre el servidor y las vulnerabilidades conocidas.
En las últimas versiones de Tomcat (Tomcat 8 y superior), el banner del servidor está deshabilitado de forma predeterminada, menciona un experto del curso de ciberseguridad.
Sin embargo, si está utilizando una versión anterior de Tomcat, es posible que deba hacerlo manualmente. Edite el archivo server.xml en el directorio conf del directorio de instalación de Tomcat. Busque el bloque Puerto conector y elimine el registro del servidor
Antes:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
server="<value>"
redirectPort="8443" />
Después:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
Guarde el archivo y reinicie el servicio Apache Tomcat.
2 – No ejecute Tomcat con privilegios de usuario root
Nunca ejecute Tomcat en nombre de un usuario privilegiado. Esto le permitirá proteger el servidor en caso de hackeo del servicio Tomcat.
Cree un usuario para ejecutar el servicio Tomcat.
sudo useradd -m -U -d /home/tomcat -s $ (which false) tomcat
Finalmente, cambie los privilegios del usuario tomcat creado.
chown -R tomcat: tomcat / home / tomcat
3 – Elimine las aplicaciones no deseadas
Apache Tomcat viene con las opciones de aplicación predeterminadas. La mejor medida de mitigación de riesgos es eliminarlas del catálogo de webapps, explica el experto del curso de ciberseguridad.
Puede eliminar aplicaciones como:
- ROOT: página de Tomcat por defecto
- Docs: documentación de Tomcat
- Ejemplos: Test Servements
4 – Activar SSL/TLS
SSL permite transferir datos entre el servidor y el cliente a través de HTTPS. Para usar SSL en Tomcat, aumentando así la seguridad, edite el archivo server.xml y la directiva SSLEnabled en el puerto del conector de esta manera:
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
SSLEnabled="true" scheme="https" keystoreFile="conf/key.jks" keystorePass="password" clientAuth="false" sslProtocol="TLS"
redirectPort="8443" />
La entrada anterior sugiere que tiene un almacén de claves con un certificado SSL.
5 – Usar el administrador de seguridad
Según los expertos del curso de ciberseguridad, una buena práctica es ejecutar el servidor Apache Tomcat usando un administrador de seguridad. Esto evita el lanzamiento de applets no verificados en el navegador.
. /startup.sh -security.
A continuación se muestra un ejemplo de la conclusión:
To do this, use the catalina script with the –security flag.Using CATALINA_BASE: /home/debian/apache-tomcat-10.0.10Using CATALINA_HOME: /home/debian/apache-tomcat-10.0.10Asing CATAL.
6 – Agregue las banderas Secure y HttpOnly
Los hackers también pueden manipular las cookies y las sesiones de las aplicaciones instaladas.
Para resolver este problema, edite el archivo web.xml y agregue las siguientes entradas al bloque session-config.<cookie-config>
<http-only>true</http-only>
<secure>true</secure>
</cookie-config>
7. Cambie el procedimiento de apagado de Tomcat
Otra forma de proteger Tomcat es cambiar el procedimiento de apagado.
Esto ayudará a evitar que los intrusos apagaran los servicios de Tomcat.
Tomcat se puede apagar usando el puerto 8005 a través de telnet y enviando el comando de apagado:
$ telnet localhost 8005Trying 127.0.0.1...Connected to localhost.Escape character is '^]'.shutdownConnection closed by foreign host.
Para solucionar esto, edite el archivo server.xml y elimine el siguiente bloque.
<Server port=“8005” shutdown=“SHUTDOWN”>
Si desea guardar el comando de apagado, cambie el puerto y el comando por defecto.
Por ejemplo:
<Server port="5800" shutdown="KILLME">
Conclusión
Este artículo describe algunas de las configuraciones necesarias que puede realizar en Apache Tomcat para proteger sus servidores. Tenga en cuenta que los métodos discutidos son solo algunas de las muchas medidas que puede tomar para proteger los servidores Apache Tomcat que se enseñan durante los cursos de ciberseguridad.
Trabajando como arquitecto de ciberseguridad, el se enfoca en protección de datos y la seguridad de datos empresariales. Antes de unirse a nosotros, ocupó varios puestos de investigador de ciberseguridad con diferentes empresas. También tiene experiencia en diferentes industrias como finanzas, salud medica y reconocimiento facial.