add-sftp-user/debug-sftp.sh

71 lines
2.6 KiB
Bash
Raw Normal View History

2025-07-24 17:44:09 +00:00
#!/bin/bash
echo "=== SFTP Addon Debug Script ==="
echo "Timestamp: $(date)"
echo
echo "=== Environment Checks ==="
echo "Operating System: $(cat /etc/os-release | grep PRETTY_NAME | cut -d= -f2 | tr -d '\"')"
echo "Kernel: $(uname -r)"
echo "User running script: $(whoami)"
echo "Current directory: $(pwd)"
echo
echo "=== Directory Checks ==="
echo "Web root exists: $([ -d '/var/www/webroot/ROOT' ] && echo 'YES' || echo 'NO')"
echo "SFTP users dir exists: $([ -d '/home/sftpusers' ] && echo 'YES' || echo 'NO')"
echo "Addon directory exists: $([ -d '/home/jelastic/add-sftp-user-addon' ] && echo 'YES' || echo 'NO')"
echo "Logs directory exists: $([ -d '/home/jelastic/add-sftp-user-addon/logs' ] && echo 'YES' || echo 'NO')"
echo
echo "=== File Permissions ==="
echo "/home permissions: $(stat -c '%a %U:%G' /home)"
echo "/home/sftpusers permissions: $([ -d '/home/sftpusers' ] && stat -c '%a %U:%G' /home/sftpusers || echo 'Directory does not exist')"
echo "/var/www/webroot/ROOT permissions: $([ -d '/var/www/webroot/ROOT' ] && stat -c '%a %U:%G' /var/www/webroot/ROOT || echo 'Directory does not exist')"
echo
echo "=== Command Availability ==="
echo "useradd: $(which useradd || echo 'NOT FOUND')"
echo "chpasswd: $(which chpasswd || echo 'NOT FOUND')"
echo "mount: $(which mount || echo 'NOT FOUND')"
echo "sshd: $(which sshd || echo 'NOT FOUND')"
echo
echo "=== SSH Configuration ==="
echo "SSH service status: $(systemctl is-active sshd)"
echo "SSH config test: $(sshd -t 2>&1 && echo 'VALID' || echo 'INVALID')"
echo "SFTP subsystem configured: $(grep -q 'Subsystem.*sftp' /etc/ssh/sshd_config && echo 'YES' || echo 'NO')"
echo "Match Group sftpusers configured: $(grep -q 'Match Group sftpusers' /etc/ssh/sshd_config && echo 'YES' || echo 'NO')"
echo
echo "=== Group Information ==="
echo "sftpusers group exists: $(getent group sftpusers >/dev/null && echo 'YES' || echo 'NO')"
echo "litespeed group exists: $(getent group litespeed >/dev/null && echo 'YES' || echo 'NO')"
echo
echo "=== Recent Logs ==="
if [ -f "/home/jelastic/add-sftp-user-addon/logs/script_output.log" ]; then
echo "Last 10 lines from script_output.log:"
tail -10 /home/jelastic/add-sftp-user-addon/logs/script_output.log
else
echo "No script output log found"
fi
echo
if [ -f "/home/jelastic/add-sftp-user-addon/logs/errors.log" ]; then
echo "Last 5 lines from errors.log:"
tail -5 /home/jelastic/add-sftp-user-addon/logs/errors.log
else
echo "No error log found"
fi
echo
echo "=== Existing SFTP Users ==="
if [ -d "/home/sftpusers" ]; then
ls -la /home/sftpusers/ | head -20
else
echo "No SFTP users directory found"
fi
echo
echo "=== Debug Script Complete ==="