I have a CentOS Linux server with a SSH connection. It works perfectly but from time to time, the server refuses the connection.
If I reboot the server, I can SSH again.
What could be wrong?
Try running sshd on the server in debug mode (-d, you can go up to -ddd) to get additional info. You can do this even remotely if don't happen to have the server under your table: log in, and then you can start another sshd instance on a different port with the -p option and try to log on into this instance.
Check to log on the server:
grep -Ri ssh /var/log/* and also use SSH with more verbosity on the client:
ssh -vvv user@server
/var/log/messagesand the other stuff in there.