Bloqueando Jenkins na porta 8080

1

Meu colega instalou o Jenkins em um de nossos servidores de teste. Quando eu acesso o ip do servidor e a porta 8080, o Jenkins está em execução, por exemplo, 99.999.999.999:8080

Eu quero bloquear o aplicativo Jenkins para o mundo externo e disponibilizá-lo somente a partir de endereços IP internos.

Então eu configurei um VirtualHost no apache da seguinte forma:

<VirtualHost *:80>
   ServerName jenkins.mytestserver.com
   ErrorLog logs/jenkins.mytestserver.com-error_log
   CustomLog logs/jenkins.mytestserver.com-access_log common

   #ProxyPass  /usr/share/tomcat6/webapps/ ajp://127.0.0.1:8080/usr/share/tomcat6/webapps/
   #ProxyPassReverse /usr/share/tomcat6/webapps/ ajp://127.0.0.1:8080/usr/share/tomcat6/webapps/
   #ProxyRequests Off

   ProxyPass / http://localhost:8080/ nocanon
   ProxyPassReverse / http://localhost:8080/
   ProxyRequests Off
   ProxyPreserveHost On

   <Location />
     order deny,allow
     deny from all
     Allow from 11.111.111.111 
   </Location>
</VirtualHost>

O Vhost funciona, eu posso acessar jenkins via jenkins.mytestserver.com e seu bloqueado do mundo exterior.

Como faço para bloquear o mundo externo de acessá-lo via 99.999.999.999: 8080?

Tenho a sensação de que a maneira como fiz o ReverseProxy acima não está correta, já que está apenas passando a solicitação para o link , que é o mesmo como link

Eu fiz referência aos seguintes documentos:

link

link (acho que a resposta à minha pergunta está neste documento, mas não consigo entender fora).

Qualquer ajuda apreciada.

Atenciosamente, Stephen

    
por Stephen 13.05.2015 / 17:33

2 respostas

0

Uma maneira fácil de bloquear o tráfego com o iptables

IPTables Como é muito bom como

A idéia básica de como bloquear seria

sudo iptables -A INPUT -s 192.168.x.x -p tcp --dport 8080 -j ACCEPT para toda a sua rede sudo iptables -A INPUT -p tcp --dport 8080 -j REJECT para rejeitar todas as outras redes

    
por 13.05.2015 / 18:01
0

Como você faz o proxy do tráfego do servidor web apache para http://localhost:8080/ , você pode configurar no tomcat conector que deve se ligar a address=127.0.0.1 em vez do comportamento padrão que é ligar a todas as interfaces.

Dessa forma, apenas o caminho para o seu serviço jenkins é através do seu proxy (a menos que você se conecte da mesma máquina executando o jenkins)

Se você quiser incluir SSL na configuração também, você também pode usar o proxyPass, mas para uma porta ouvindo 443, e colocar sua configuração SSL no apache httpd também (e ter um redirecionamento da porta 80 para 443) .

    
por 14.05.2015 / 19:11