I recently upgraded my server from Ubuntu 14.04 to 16.04. The upgrade seemed successful (so I'm not sure if it's related) but about a week in I restarted the host and it now will not accept remote requests.

I can connect to the terminal using my hosting provider's console access but I can't remotely SSH into the machine. Once in the machine I can ping myhost.com successfully, but I cannot ping the machine from a remote location. Pinging from my development machine requests in Request timed out.

I tried a previous loading a previous snapshot from before I upgraded my OS and I can ping the machine successfully.

I've tried tailing /var/log/auth.log but the log is not updated when I try to access remotely.

I'm not sure what to try next to find out why my server is not responding.


Running iptables -nvL results in:

modprobe: FATAL: Module ip_tables not found in directory /lib/modules/4.4.0-28-generic
iptables v1.6.0: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
Perhaps iptables or your kernel needs to be upgraded.
  • Can you check the local firewall rules to make sure that inbound connections are allowed? Perhaps iptables -nvL – Mark Riddell Feb 18 '17 at 20:58
  • sudo apt-get update && sudo apt-get install linux-image-`uname -r` && sudo apt-get install linux-headers-`uname -r` – Tolsadus Feb 18 '17 at 22:37
  • Thanks @Tolsadus, it looks like I also can't ping remote hosts from inside the machine so I can't call download anything from the apt-get repositories – Godwin Feb 18 '17 at 23:10

There is a lot you can do, but also a lot of things that can be the problem. Unfortunately what you have related points in two different directions.

Since this happened after a system upgrade and reboot, I think it may be possible that your services are not started.

Execute sudo netstat --tcp -l. There should be a line like this:

tcp        0      0 *:ssh                    *:*                     LISTEN     

If there isn't, then your ssh server is not listening. Execute sudo service ssh restart. If that fixes the problem, check your runlevels and make ssh is started on boot.

If there is, then there may be a network problem (and a ping timeout certainly points in that direction), but iptables -nvL should show that if it was on the system, and it doesn't.

Hmm I just saw your comment saying that you couldn't get out, it now seems more probable that you have a general network problem.

You need the output of ifconfig -a to check that your public IP is in there. If it is, you need the output of route -n to check that you do have a default route outwards (I think this may be the problem, and almost certainly if you can contact other machines in your subnet but not outside machines).

  • I have ensured that ssh and other services are running but my public IP is not appearing anywhere in the output of ifconfig -a – Godwin Feb 18 '17 at 23:31
  • That can be normal, if you are running in a hosting provider's cloud with destination NAT. You should compare to your other machines, and if that doesn't help you should contact your hosting provider (you haven't named it). – Law29 Feb 19 '17 at 8:46

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.