
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/jenkins
por algum motivo.
Verifique novamente se JENKINS_ARGS
está correto e inclui a opção. Tente também reiniciar o Jenkins.
Responder2
De acordo comesseresposta, /etc/default/jenkins
o arquivo não é mais usado nas versões recentes do Jenkins. Você precisará atualizar o serviço systemd Jenkins para atingir seu objetivo:
- Abra
/lib/systemd/system/jenkins.service
via editor de texto. - Localize a linha que contém a variável de ambiente do endereço de escuta do Jenkins:
#Environment="JENKINS_LISTEN_ADDRESS="
- Remova o comentário e atualize o valor da variável com o IP local:
Environment="JENKINS_LISTEN_ADDRESS=127.0.0.1"
- Salve o arquivo e recarregue os arquivos da unidade systemd:
systemctl daemon-reload
- 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