Como desabilitar o acesso externo 8080 ao Jenkins?

Como desabilitar o acesso externo 8080 ao Jenkins?

Eu instalei o nginx junto com o jenkins na máquina Ubuntu 21.

Configurei o nginx para redirecionar o tráfego 80 para 8080 usando as etapas destelink

Agora, capaz de redirecionar o tráfego de 80 para 8080. Portanto, para desabilitar o acesso direto ao jenkins de 8080 externamente. Alterados os argumentos em /etc/default/jenkins para adicionar a linha --httpListenAddress=127.0.0.1

Agora, a linha de argumentos de Jenkins é a seguinte.

JENKINS_ARGS="--webroot=/var/cache/$NAME/war --httpPort=$HTTP_PORT --httpListenAddress=127.0.0.1"

Então reiniciei a máquina também depois disso, mas ainda conseguindo acessar diretamente pela porta 8080.

Por favor, sugira como conseguir isso.

azureuser@jenkins:~$ ss -lnpt
State         Recv-Q        Send-Q               Local Address:Port               Peer Address:Port       Process
LISTEN        0             511                        0.0.0.0:80                      0.0.0.0:*
LISTEN        0             4096                 127.0.0.53%lo:53                      0.0.0.0:*
LISTEN        0             128                        0.0.0.0:22                      0.0.0.0:*
LISTEN        0             4096                             *:3000                          *:*
LISTEN        0             50                               *:8080                          *:*
LISTEN        0             128                           [::]:22                         [::]:*

azureuser@jenkins:~$ ps auxw | grep jenkins
jenkins     6761  0.1 11.8 3036280 416756 ?      Ssl  Mar29   8:08 /usr/bin/java -Djava.awt.headless=true -jar /usr/share/java/jenkins.war --webroot=/var/cache/jenkins/war --httpPort=8080
azureus+   86025  0.0  0.0   8548  2356 pts/0    S+   19:09   0:00 grep --color=auto jenkins

Responder1

Sua linha de comando do Jenkins não inclui a opção definida /etc/default/jenkinspor algum motivo.

Verifique novamente se JENKINS_ARGSestá correto e inclui a opção. Tente também reiniciar o Jenkins.

Responder2

De acordo comesseresposta, /etc/default/jenkinso arquivo não é mais usado nas versões recentes do Jenkins. Você precisará atualizar o serviço systemd Jenkins para atingir seu objetivo:

  1. Abra /lib/systemd/system/jenkins.servicevia editor de texto.
  2. Localize a linha que contém a variável de ambiente do endereço de escuta do Jenkins:#Environment="JENKINS_LISTEN_ADDRESS="
  3. Remova o comentário e atualize o valor da variável com o IP local:Environment="JENKINS_LISTEN_ADDRESS=127.0.0.1"
  4. Salve o arquivo e recarregue os arquivos da unidade systemd:systemctl daemon-reload
  5. Reinicie o Jenkins:systemctl restart jenkins

Jenkins deveria estar ouvindo no localhost agora:

$ netstat -plunt | grep 8080
tcp6       0      0 127.0.0.1:8080          :::*                    LISTEN      11661/java

informação relacionada