Linux – Unable to access Jenkins (Centos 7)

centoscentos7Jenkinslinuxnetworking

I've just installed Jenkins with its default configs on a Centos 7 physical box.

Port 8080 is open on the firewall:

sudo iptables -L -n
[...]
ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:8080
[...]

It also looks like Jenkins is actually listening on all interfaces:

sudo netstat -an | grep "LISTEN "
[...]
tcp6       0      0 :::8080                 :::*                    LISTEN
[...]

I can curl localhost:8080 locally (from the Centos box) without a problem, but from anywhere else in the network I get a Connection refused.

Am I missing something?

Best Answer

The above looks like Jenkins is defaulting to ipv6 only.

Try the following, this will probably fix your problem:

run: $ /sbin/sysctl net.ipv6.bindv6only

You will probably get an output with value net.ipv6.bindv6only = 1.

If this is the case, you will need to disable the setting:

sudo /sbin/sysctl net.ipv6.bindv6only=0

After the command above you will get an answer like net.ipv6.bindv6only = 0, restart Jenkins: sudo systemctl restart jenkins and try to connect to Jenkins again.

If this worked for you, you should put this in a sysctl config-file. Because this is not a persistent fix. After a reboot the setting you just have modified will be defaulted to 1 again.

Check /etc/sysctl.conf and /etc/sysctl.d/* and add net.ipv6.bindv6only = 0 in order to make this setting permanent and run sudo sysctl -p or restart after changing it.

Related Topic