Como faço para que Jenkins pare de ouvir conexões remotas?

23

Eu tenho Jenkins sentado atrás do Nginx, com o Nginx cuidando da autenticação, mas o Jenkins ainda está ouvindo na porta 8080 externamente, portanto, acessando a caixa na porta 8080, as pessoas podem ignorar o Nginx.

Como posso dizer para parar de ouvir conexões remotas e simplesmente aceitar conexões localmente?

Parece que pode ter algo a ver com esse parâmetro ajp13ListenAddress, mas não consigo descobrir como definir isso no script init.d instalado com o Jenkins.

Muito obrigado por qualquer ajuda!

Ludo.

(Parece que ainda não há uma tag Jenkins e não posso criá-la porque não tenho representante)

Ludo
fonte
Acabei de adicionar a tag jenkins.
davey
É por isso que tendem a implantar Hudson / Jenkins dentro Tomcat ..
Tom O'Connor
1
Comentando, porque não posso responder diretamente à sua pergunta. Você já pensou em mitigar usando iptables e / ou tcpwrappers?
pboin

Respostas:

25

Debian

Se você instalou o Jenkins a partir do pacote Debian, poderá modificar /etc/default/jenkinse adicionar a seguinte linha em algum lugar:

HTTP_HOST=127.0.0.1

e adicione --httpListenAddress=$HTTP_HOSTao JENKINS_ARGS para ler algo como:

JENKINS_ARGS="--webroot=/var/run/jenkins/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=$HTTP_HOST"

Ubuntu

Se você instalou o Jenkins a partir do pacote Ubuntu Oneiric (11.10), edite /etc/init/jenkins.confe adicione --httpListenAddress=127.0.0.1à JENKINS_ARGSlinha, para que fique como:

JENKINS_ARGS="--webroot=$JENKINS_RUN/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=127.0.0.1"

RedHat / CentOS / Amazon Linux

Se você instalou o Jenkins usando o repositório YUM, modifique /etc/sysconfig/jenkinse edite JENKINS_LISTEN_ADDRESSparaJENKINS_LISTEN_ADDRESS=127.0.0.1

Wouter de Bie
fonte