Troubleshooting

Server Troubleshooting: Diagnosing and Fixing Common Issues

A systematic approach to diagnosing SSH issues, high CPU, disk full, and network problems.

Published May 10, 2025Updated May 28, 202610 min readIntermediate
Table of Contents

Server Not Responding — First Steps

  1. Try to ping the server: ping YOUR_SERVER_IP — if this fails, the server may be offline
  2. Log in to VirtFusion and check the power state — is it running?
  3. Check the bandwidth graph — unusually high traffic may indicate a DDoS
  4. Open the VNC console in VirtFusion for direct terminal access

SSH Connection Refused

Common causes and fixes:

SymptomLikely CauseFix
Connection refusedSSH service stoppedVNC console → systemctl start sshd
Connection refusedUFW blocking port 22VNC console → ufw allow ssh
Connection timed outServer offline or wrong IPCheck VirtFusion, verify IP
Permission deniedWrong key / password auth disabledUse VNC console to add correct key
Too many auth failuresfail2ban banned your IPVNC → fail2ban-client set sshd unbanip YOUR_IP

High CPU Usage

# Find top CPU consumers
top                           # Press 'P' to sort by CPU
ps aux --sort=-%cpu | head -20

# Check if it's a specific service
systemctl status nginx
systemctl status php8.3-fpm
systemctl status mysql
⚠️ If you see unknown processes like xmrig, minerd, or random strings consuming 90%+ CPU — your server may be compromised. Immediately change all passwords and review crontabs and authorized_keys.

Disk Full — Free Space Fast

df -h                         # Check disk usage
du -sh /* 2>/dev/null | sort -rh | head -20  # Find large directories

# Common cleanup commands
apt clean && apt autoremove -y        # Package cache
journalctl --vacuum-size=200M         # System logs
docker system prune -a                # Docker images/containers
find /var/log -name "*.log" -size +100M  # Find large log files

Website Returning 502 Bad Gateway

502 means Nginx can't reach the upstream app (PHP-FPM, Node.js, etc.):

systemctl status php8.3-fpm          # Is PHP-FPM running?
systemctl restart php8.3-fpm         # Restart it

tail -f /var/log/nginx/error.log     # Check Nginx error log
journalctl -u php8.3-fpm -n 50       # Check PHP-FPM logs

Out of Memory — Server Keeps Crashing

free -h                       # Check available memory
cat /var/log/syslog | grep -i "oom"  # OOM killer events

# Add swap space (see swap guide)
fallocate -l 2G /swapfile && chmod 600 /swapfile
mkswap /swapfile && swapon /swapfile
troubleshootingSSHdiskCPUdebugging
Was this article helpful?

Join Our Discord

Connect with our community of gamers and developers

Get instant support, share experiences, and stay updated with the latest news

Join Us On Discord
2026 VPS SaleLIMITED TIME
View Sale Plans