温馨提示×

如何备份Debian vsftp

小樊
39
2026-08-15 05:37:12
栏目: 智能运维

在 Debian 上备份 vsftpd(Very Secure FTP Daemon) 的配置和数据,通常包含 配置文件用户相关配置 以及 FTP 数据目录。下面按常见场景给你一个完整、安全的备份方案。


一、备份 vsftpd 配置文件

vsftpd 的主配置文件一般在:

/etc/vsftpd.conf

1️⃣ 备份主配置文件

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

或打包备份:

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

2️⃣ 备份其他相关配置(如有)

有些系统可能包含额外配置:

/etc/vsftpd/
/etc/ftpusers
/etc/ftpd/

备份整个目录:

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

二、备份 FTP 用户数据

1️⃣ 如果使用 系统用户

vsftpd 默认使用系统用户(如 /home/user)。

备份用户列表

getent passwd > users.txt
getent group > groups.txt

备份用户主目录(FTP 数据)

假设 FTP 用户数据在 /home

sudo tar czvf ftp-home-$(date +%F).tar.gz /home

⚠️ 注意:如果数据量大,建议只备份 FTP 相关目录。


2️⃣ 如果使用 虚拟用户(PAM + db)

常见于 /etc/vsftpd/virtual_users.db

备份虚拟用户数据库

sudo cp /etc/vsftpd/virtual_users.db /etc/vsftpd/virtual_users.db.bak

备份 PAM 配置

sudo cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak

三、备份 FTP 数据目录(重点)

查看 vsftpd.conf 中定义的目录:

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

常见目录:

/var/ftp
/srv/ftp
/home/*

备份示例:

sudo tar czvf ftp-data-$(date +%F).tar.gz /var/ftp

四、备份服务状态(可选)

1️⃣ 查看 vsftpd 状态

systemctl status vsftpd

2️⃣ 备份 systemd 服务配置(如有修改)

sudo cp /lib/systemd/system/vsftpd.service /lib/systemd/system/vsftpd.service.bak

五、自动化备份(推荐)

示例脚本 backup_vsftpd.sh

#!/bin/bash

DATE=$(date +%F)
BACKUP_DIR=/backup/vsftpd

mkdir -p $BACKUP_DIR

tar czvf $BACKUP_DIR/vsftpd-config-$DATE.tar.gz /etc/vsftpd.conf
tar czvf $BACKUP_DIR/ftp-data-$DATE.tar.gz /var/ftp

赋予执行权限:

chmod +x backup_vsftpd.sh

加入定时任务:

crontab -e

每天凌晨 2 点备份:

0 2 * * * /path/backup_vsftpd.sh

六、恢复 vsftpd 备份(简要)

sudo tar xzvf vsftpd-config-2026-01-21.tar.gz -C /
sudo systemctl restart vsftpd

七、常见注意事项

✅ 确保备份包含:

  • /etc/vsftpd.conf
  • 用户数据目录
  • 虚拟用户数据库(如有)

✅ 恢复后检查:

vsftpd -olisten=NO
systemctl status vsftpd

✅ 防火墙 / SELinux(Debian 默认无 SELinux,但 AppArmor 可能影响)


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

  • ✅ 使用的是 系统用户还是虚拟用户
  • ✅ FTP 数据目录在哪
  • ✅ 是否使用 SSL/TLS

我可以帮你定制一套 最小、最安全的备份方案

0