У меня Jenkins сидит за Nginx, а Nginx заботится об аутентификации, но Jenkins все еще прослушивает порт 8080 извне, поэтому, получив доступ к ящику на порту 8080, люди могут обойти Nginx.
Как я могу сказать ему, чтобы он прекратил прослушивание удаленных подключений и просто принимал подключения локально?
Похоже, это может быть связано с этим параметром ajp13ListenAddress, но я не могу понять, как установить это в сценарии init.d, установленном с Jenkins.
Большое спасибо за любую помощь!
Людо.
(Похоже, тега Jenkins еще нет, и я не могу его создать, так как у меня нет репутации)
Если вы установили Jenkins из пакета Debian, вы можете изменить /etc/default/jenkins
и добавьте где-нибудь следующую строку:
HTTP_HOST=127.0.0.1
а затем добавить --httpListenAddress=$HTTP_HOST
в JENKINS_ARGS, чтобы он читался примерно так:
JENKINS_ARGS="--webroot=/var/run/jenkins/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=$HTTP_HOST"
Если вы установили Jenkins из пакета Ubuntu Oneiric (11.10), отредактируйте /etc/init/jenkins.conf
и добавить --httpListenAddress=127.0.0.1
к JENKINS_ARGS
строку, чтобы она выглядела так:
JENKINS_ARGS="--webroot=$JENKINS_RUN/war --httpPort=$HTTP_PORT --ajp13Port=$AJP_PORT --httpListenAddress=127.0.0.1"
Если вы установили Jenkins с помощью репозитория YUM, измените /etc/sysconfig/jenkins
и редактировать JENKINS_LISTEN_ADDRESS
к JENKINS_LISTEN_ADDRESS=127.0.0.1