在 CentOS 上升级 FTP Server(通常指 vsftpd,也可能是 ProFTPD 或 Pure-FTPd),做法取决于你当前使用的 FTP 服务软件。下面是最常见、最安全的升级方式,以及不同场景的说明。
rpm -qa | grep -E 'vsftpd|proftpd|pure-ftpd'
常见结果:
vsftpd-3.0.x → vsftpdproftpd-* → ProFTPDpure-ftpd-* → Pure-FTPd也可以看服务名:
systemctl list-units --type=service | grep ftp
yum update vsftpd -y
dnf update vsftpd -y
升级后重启服务:
systemctl restart vsftpd
systemctl status vsftpd
vsftpd -v
# 或
/usr/sbin/vsftpd -v
yum update proftpd -y # CentOS 7
dnf update proftpd -y # CentOS 8 / Stream
重启:
systemctl restart proftpd
yum update pure-ftpd -y
dnf update pure-ftpd -y
重启:
systemctl restart pure-ftpd
CentOS 官方仓库不会提供最新版 FTP 服务器,而是提供“稳定 + 安全补丁版本”。
yum info vsftpd
如果版本过旧,可选择:
yum install epel-release -y
yum update vsftpd -y
⚠️ 风险较高,可能影响系统稳定性
以 vsftpd 为例:
yum groupinstall "Development Tools" -y
wget https://security.appspot.com/downloads/vsftpd-3.0.5.tar.gz
tar -zxvf vsftpd-3.0.5.tar.gz
cd vsftpd-3.0.5
make
make install
⚠️ 注意:
cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak
升级后查看是否有弃用参数:
vsftpd /etc/vsftpd/vsftpd.conf
systemctl status firewalld
getenforce
systemctl status vsftpd
journalctl -xe
确认:
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
并放行防火墙:
firewall-cmd --add-port=30000-31000/tcp --permanent
firewall-cmd --reload
yum update vsftpd -y
systemctl restart vsftpd
vsftpd -v
如果你愿意,可以告诉我:
我可以给你精确到命令级别的升级方案。