温馨提示×

如何迁移debian ftpserver

小樊
36
2026-10-06 18:38:46
栏目: 智能运维

下面按常见场景给你一个完整的 Debian FTP 服务器迁移指南(以 vsftpd 为例,最常用)。如果你用的是 ProFTPD / Pure-FTPd,我也可以单独说。


一、迁移前准备(旧服务器)

1. 确认 FTP 服务类型

dpkg -l | grep -E "vsftpd|proftpd|pure-ftpd"

2. 备份配置文件

# vsftpd 示例
sudo cp -a /etc/vsftpd.conf /etc/vsftpd.conf.bak
sudo tar czf vsftpd-etc.tar.gz /etc/vsftpd.conf /etc/vsftpd/

3. 备份用户与数据

FTP 用户(系统用户)

sudo getent passwd | grep ftp
sudo tar czf ftp-home.tar.gz /home/ftpuser

虚拟用户(如使用了 db 文件)

sudo tar czf vsftpd-virtual.tar.gz /etc/vsftpd/virtual_users.db

FTP 数据目录

sudo tar czf ftp-data.tar.gz /srv/ftp

二、新服务器安装 FTP 服务

1. 安装 vsftpd

sudo apt update
sudo apt install vsftpd

2. 恢复配置文件

sudo tar xzf vsftpd-etc.tar.gz -C /

3. 恢复用户和数据

sudo tar xzf ftp-home.tar.gz -C /
sudo tar xzf ftp-data.tar.gz -C /

4. 若使用虚拟用户

sudo tar xzf vsftpd-virtual.tar.gz -C /
sudo systemctl restart vsftpd

三、权限与 SELinux / 防火墙

1. 文件权限修复

sudo chown -R ftpuser:ftpuser /srv/ftp
sudo chmod 755 /srv/ftp

2. 防火墙

sudo ufw allow 21/tcp
sudo ufw allow 40000:50000/tcp  # 被动模式端口

3. 测试配置

sudo vsftpd /etc/vsftpd.conf &

四、切换 DNS / 客户端

  • 修改 DNS 指向新服务器
  • 或更新客户端 FTP 地址
  • 建议先双机并行运行几天

五、常见问题

❌ 无法登录

  • 检查 /etc/passwd 用户是否存在
  • 检查 shell 是否被禁止

❌ 被动模式失败

pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000

❌ 上传失败

sudo setsebool -P ftpd_full_access on  # 若启用 SELinux

六、如果你用的是其他 FTP 服务

告诉我:

  • Debian 版本
  • FTP 软件(vsftpd / proftpd / pure-ftpd)
  • 是否虚拟用户
  • 是否 Docker

我可以直接给你对应迁移命令。

0 踩