I am getting a
port 22: Connection refused
error while connecting to a server.
I have both the openssh client and server installed, and they are running. But still there is an error. Please help.
While on the server, check to make sure sshd is actually running, and is listening on port 22:
$ sudo netstat -anp | grep sshd tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1538/sshd tcp6 0 0 :::22 :::* LISTEN 1538/sshd
If you don't get results, or they don't show you're listening on tcp 0.0.0.0:22... fix that.
If you DO show that sshd is running and is listening on tcp port 22, check to make sure there's no firewall rule getting in the way. Again, on the server:
$ sudo iptables -L | grep ssh DROP tcp -- anywhere anywhere tcp dpt:ssh
$ sudo ufw verbose Status: active To Action From -- ------ ---- 22 DENY Anywhere 22/tcp DENY Anywhere
If you do see a rule like one of the ones above, you'll need to fix that.
If you don't see any firewall rules in the way and you do see the service running on the server, then it's time to check your workstation, and the network it's connected to. Can you connect to other servers? Can you ping your own interface or loopback address? Etc.
The following commands worked for me:
cd /root/.ssh vi known_hosts
Now delete everything in that file and enter on the terminal:
service sshd restart
Source: SSH - Connection Refused