Pregunta:
Tengo a Jenkins sentado detrás de Nginx, con Nginx encargándose de la autenticación, pero Jenkins todavía está escuchando en el puerto 8080 externamente, por lo que al acceder a la caja en el puerto 8080, las personas pueden omitir Nginx.
¿Cómo puedo decirle que deje de escuchar conexiones remotas y solo acepte conexiones localmente?
Parece que podría tener algo que ver con este parámetro ajp13ListenAddress, pero no puedo averiguar cómo configurarlo en el script init.d instalado con Jenkins.
¡Muchas gracias por cualquier ayuda!
Ludo.
(Parece que todavía no hay una etiqueta de Jenkins y no puedo crearla porque no tengo representante)
Respuesta:
Debian
Si instaló Jenkins desde el paquete Debian, puede modificar /etc/default/jenkins
y agregar la siguiente línea en alguna parte:
HTTP_HOST=127.0.0.1
y luego agregue --httpListenAddress=$HTTP_HOST
a JENKINS_ARGS para que se lea algo como:
JENKINS_ARGS="--webroot=/var/run/jenkins/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=$HTTP_HOST"
Ubuntu
Si instaló Jenkins desde el paquete Ubuntu Oneiric (11.10), edite /etc/init/jenkins.conf
y agregue --httpListenAddress=127.0.0.1
a la línea JENKINS_ARGS
, para que se lea así:
JENKINS_ARGS="--webroot=$JENKINS_RUN/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=127.0.0.1"
RedHat / CentOS / Amazon Linux
Si instaló Jenkins usando el repositorio YUM, modifique /etc/sysconfig/jenkins
y edite JENKINS_LISTEN_ADDRESS
a JENKINS_LISTEN_ADDRESS=127.0.0.1