Consideraciones de Seguridad sobre el acceso a través de Internet a O3
La exposición del servidor de O3 a Internet abre un conjunto de riesgos de seguridad, como ocurre con cualquier aplicación, este artículo analiza diferentes escenarios de seguridad y le asigna diferentes niveles de recomendación:
Escenario | Descripción | Recomendación |
---|---|---|
Web con Proxy | Consiste en utilizar herramientas adicionales para permitir el acceso desde Internet a un servidor de O3 (ubicado por ejemplo en una DMZ). Se lo utiliza para exponer el servicio a internet permitiendo el acceso por ejemplo a http://www.servidor_empresarial.com/o3portal, incluso cuando servidor_empresarial no es el que contiene a O3 | |
Puerto 8080 expuesto a Internet | Consiste en exponer el puerto 8080 a internet a través de una tercera máquina. | |
Máquina expuesta a internet | Consiste en tener la máquina sin ningún tipo de protección conectada a internet |
Para cada uno de estos escenarios se realizan las siguientes recomendaciones, algunas de ellas están basadas en sugerencias de seguridad de JBoss: http://community.jboss.org/wiki/SecureJboss
Web con Proxy
Este mecanismo es el recomendado ya que brinda la mayor seguridad, dado que se accede desde internet sólo a la funcionalidad permitida.
En este caso se utiliza un servidor Web con capacidad de proxy (por ejemplo Apache o IIS ) se recomienda para este caso el uso de un módulo que haga de puente entre el servidor web y el tomcat (el más recomendado es JK Mount).
Se debe hacer proxy de las siguientes aplicaciones Web de O3:
- /o3portal
- /cas
- /eportal
- /o3report
Puerto 8080 expuesto a Internet
En este caso se exponen todas las aplicaciones Web publicadas en el servidor JBoss de O3 a internet (por ejemplo realizando NAT en un firewall), por lo tanto deben tomarse las siguientes medidas:
- Cambiar la password de la consola JMX (jmx-console): Cambio de password en el caso que estemos en la versión > 5.2.004 ir directo al punto 3 ya que solo se necesita cambiar la password.
- Eliminar "invokers" de JBoss: http://community.jboss.org/wiki/RemoveTheInvokers. La referencia a jms/jbossmq-httpil.sar no es valida para versiones 5.4 de O3, en que se cambio el soporte de JMS de Jboss, el cual no tiene activos conexiones http.
- Deshabilitar la característica de RMIClassLoading de JBoss: http://community.jboss.org/wiki/RMIClassLoadingService: El primer archivo referido es en realidad <jboss>/server/default/conf/jboss-service.xml. Luego, se debe comentar en <jboss>/server/default/deploy/ejb-deployer.xml la linea: <depends optional-attribute-name="WebServiceName">jboss:service=WebService</depends>
Máquina expuesta a Internet
Este caso es altamente contraindicado, expone a todos los servicios del servidor y no sólo a O3 a ataques externos.
Si a pesar de esta indicación, se utiliza este mecanismo, se deben seguir todas las recomendaciones de la siguiente página de JBoss: http://community.jboss.org/wiki/SecureJboss, tener en cuenta que con este mecanismo sólo se asegura el servidor JBoss de O3 pero no los demás servicios disponibles en la máquina
Sobre estos cambios al Servidor
La aplicación de los ajustes recomendados en está página al Servidor de O3 no afectan los Servicios de Asistencia y Respaldo que una instalación concreta pudiera contar (según corresponda al modo de licenciamiento, plazo, servicios de asistencia, etc.), ya que se consideran cambios de configuración soportados.
Hacemos esta aclaración en respuesta a consultas de nuestros clientes.