71 lines
2.6 KiB
Bash
71 lines
2.6 KiB
Bash
|
|
#!/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 ==="
|