I have a fresh minimal installation of CentOS 7 that is running Tomcat on it. Im unable to pull up the site from anywhere via the browser but can see it trying to serve on 8080 from netstat. The service is running properly when I check service tomcat status (also, httpd and JAVA are running properly). I can curl localhost:8080 and get the Tomcat website code as a reply but it won't pull up from another system by going to http://IPADDRESS:8080. If I run netstat I can see it listening for 8080, but if I run nmap against the private IP it does not show 80 (or 8080) open on it. I don't have firewall/IPTables installed on this system yet so it shouldn't be blocking it. Im able to ping the system just fine from other systems.

I can't seem to find the answer to this. I've followed a lot of guides on the installation but can't find the solution. Please let me know if there is something im missing or if you have any clues. Thank you for your time!

  • 1
    Do you have a Listen statement that binds on any external IP in httpd.conf? – Fox May 8 '17 at 21:31
  • Yes. For the httpd.conf I have Listen 80 set in there. I tried to comment that out and put in its local IP, but it would not start the service. Got an error of (13) Permission Denied: AH00072: make_sockj: could not bind to address. No listening socks available, shutting down. I checked on that real quick, but I don't see how that issue would come up since im running this all as root. Ideally I just want Tomcat running but can't seem to get anything working. Once I change httpd.conf back to Listen 80 im able to start the service, but still not access it. – saleetzo May 8 '17 at 21:59
  • httpd -t == "Syntax OK" Take a look at the sentence right after "Would not start the service...." I listed the error right there after "Got the error.... " Thanks for the help. I'll try to edit better so you can read it better. – saleetzo May 8 '17 at 22:04
  • Permission Denied as root typically means an incorrect SELinux configuration (I believe CentOS 7 comes with SELinux enabled). If so, what does semanage port -l | grep http say? – Fox May 8 '17 at 22:12
  • No SE enabled on the min installation -- I was able to get it working by making some firewall changes. Thank you for your help! – saleetzo May 9 '17 at 0:33

The issue was with me reusing an OLD IP address that already had a network firewall rule attached to it. I was sure everything was correct on the system, so when I sniffed the packets going to the server I saw that they were dropped at the network firewall level. Resolved this and everything was good.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.