以下是Debian FTP(以vsftpd为例)与其他服务的集成方法:
sudo apt install vsftpd apache2 # 安装vsftpd和Apache /etc/vsftpd.conf,设置本地用户根目录为Web根目录(如/var/www/html):local_root=/var/www/html chroot_local_user=YES sudo useradd -m -d /var/www/html ftpuser sudo passwd ftpuser sudo chown -R ftpuser:ftpuser /var/www/html sudo chmod 755 /var/www/html sudo ufw allow 21/tcp sudo ufw allow 80/tcp sudo ufw enable sudo apt install proftpd-mysql CREATE DATABASE ftpdb; CREATE TABLE ftpusers (id INT, username VARCHAR(50), password VARCHAR(50)); INSERT INTO ftpusers VALUES (1, 'ftpuser', 'encrypted_password'); /etc/proftpd/proftpd.conf,启用MySQL认证:<IfModule mod_sql.c> SQLBackend mysql SQLConnectInfo ftpdb@localhost ftpuser ftppassword SQLUserDB ftpusers </IfModule> sudo systemctl restart proftpd sudo apt install openssh-server sudo usermod -s /bin/bash ftpuser # 允许shell访问(可选) sudo mkdir /home/ftpuser/ftp sudo chown ftpuser:ftpuser /home/ftpuser/ftp /etc/ssh/sshd_config,添加:Subsystem sftp internal-sftp Match Group ftpgroup ChrootDirectory /home/%u/ftp ForceCommand internal-sftp AllowTcpForwarding no sudo systemctl restart ssh chroot限制用户仅能访问指定目录,避免越权操作。ssl_enable=YES)或使用SFTP加密数据。ufw或iptables。/var/log/vsftpd.log或/var/log/auth.log,排查异常访问。具体集成方案可根据实际需求选择,参考官方文档进一步优化配置。