Modificar el usuario del sistema con el que Confluence (Atlassian) se ejecuta

Muchas instancias de Confluence son ejecutadas como usuario root para poder servir el framework en el puerto 80, siendo eso un riesgo para la seguridad. Para cambiar el usuario del sistema utilizado para ejecutar Jira se pueden seguir los siguientes pasos.

Parar el servicio.

service confluence stop

Crear el usuario.

/usr/sbin/useradd confluence --shell /bin/bash confluence

Configurar / asegurarse de utilizar un puerto por encima de 1024 (Usuarios no privilegiados) para Jira en /opt/atlassian/confluence/conf/server.xml

<Connector port="8090"

Damos los permisos pertinentes a los directorios de Confluence.

chown -R confluence:confluence /opt/atlassian/confluence/
chown -R confluence:confluence /var/atlassian

Editar el fichero /opt/atlassian/confluence/bin/user.sh

# START INSTALLER MAGIC ! DO NOT EDIT !
CONF_USER="confluence" # user created by installer
# END INSTALLER MAGIC ! DO NOT EDIT ! 

Script de inicio para Confluence con redirección de puerto mediante socat (8090 > 80).

confluence
#!/bin/bash
 
# Confluence Linux service controller script
cd "/opt/atlassian/confluence/bin"
socat TCP-LISTEN:80,fork TCP:127.0.0.1:8090 &> /dev/null &
 
case "$1" in
    start)
        su -m confluence -c ./start-confluence.sh
        ;;
    stop)
        su -m confluence -c ./stop-confluence.sh
        ;;
    restart)
        su -m confluence -c ./stop-confluence.sh
        su -m confluence -c ./start-confluence.sh
        ;;
    *)
        echo "Usage: $0 {start|stop|restart}"
        exit 1
        ;;
esac