温馨提示×

如何备份Debian FTPServer

小樊
41
2026-07-23 10:26:36
栏目: 智能运维

备份 Debian 上的 FTP 服务器主要包含 配置文件、用户数据、权限与日志 三部分。下面以 vsftpd(最常见) 为例,系统说明如何完整备份。


一、确认 FTP 服务器类型

先确认你使用的是哪种 FTP 服务:

dpkg -l | grep ftp

常见:

  • vsftpd(最常见)
  • proftpd
  • pure-ftpd

下面以 vsftpd 为主说明。


二、备份 FTP 配置文件

vsftpd 的主配置文件路径:

/etc/vsftpd.conf

1️⃣ 备份配置文件

cp /etc/vsftpd.conf /etc/vsftpd.conf.bak

或打包备份:

tar czvf vsftpd-config-$(date +%F).tar.gz /etc/vsftpd.conf

如果是 proftpd:

tar czvf proftpd-config-$(date +%F).tar.gz /etc/proftpd/

三、备份 FTP 用户数据(最重要)

FTP 主要用于文件传输,核心数据是 用户上传/下载的文件

1️⃣ 确认 FTP 根目录

查看配置文件中 FTP 目录:

grep -E "local_root|anon_root|chroot" /etc/vsftpd.conf

常见目录:

  • /srv/ftp
  • /home/ftp
  • /var/ftp
  • 用户家目录 /home/username

2️⃣ 使用 rsync 备份(推荐)

rsync -av /srv/ftp/ /backup/ftp-data-$(date +%F)/

或远程备份:

rsync -avz /srv/ftp/ user@backup-server:/backup/ftp/

rsync 支持增量备份,速度快


四、备份用户与权限信息

FTP 用户通常是系统用户或虚拟用户。

1️⃣ 系统用户

cp /etc/passwd /backup/passwd.bak
cp /etc/shadow /backup/shadow.bak
cp /etc/group  /backup/group.bak

⚠️ 注意:shadow 文件权限敏感,需 root 操作。

2️⃣ FTP 虚拟用户(如 PAM)

如果使用虚拟用户:

tar czvf ftp-virtual-users.tar.gz /etc/pam.d/vsftpd /etc/vsftpd/

五、备份防火墙与 SELinux(如有)

1️⃣ iptables / nftables

iptables-save > /backup/iptables.rules

或 nftables:

nft list ruleset > /backup/nftables.conf

2️⃣ UFW(如启用)

ufw status numbered > /backup/ufw-status.txt

六、备份 FTP 日志(可选)

tar czvf ftp-logs.tar.gz /var/log/vsftpd.log

或:

/var/log/syslog

七、自动化备份(推荐)

1️⃣ 编写备份脚本

#!/bin/bash
BACKUP_DIR=/backup/ftp
DATE=$(date +%F)

mkdir -p $BACKUP_DIR

tar czvf $BACKUP_DIR/ftp-config-$DATE.tar.gz /etc/vsftpd.conf
rsync -av /srv/ftp/ $BACKUP_DIR/ftp-data-$DATE/

2️⃣ 加入定时任务

crontab -e

每天凌晨 2 点备份:

0 2 * * * /root/ftp-backup.sh

八、恢复 FTP 服务器(简要)

tar xzvf ftp-config-*.tar.gz -C /
rsync -av /backup/ftp-data/ /srv/ftp/
systemctl restart vsftpd

九、总结(备份清单)

✅ 配置文件
✅ FTP 数据文件
✅ 用户与权限
✅ 防火墙规则
✅ 日志(可选)


如果你愿意,可以告诉我:

  • 使用的是 vsftpd / proftpd / pure-ftpd
  • 是否使用 虚拟用户
  • 是否运行在 云服务器 / 本地服务器

我可以给你一份 完全针对你环境的备份方案

0