CentOS SFTP更新到最新版本步骤(SFTP为OpenSSH组件,需通过更新OpenSSH实现)
在进行任何更新前,务必备份SSH及SFTP配置文件,防止操作失误导致服务中断:
sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak # 备份SSH主配置文件
sudo cp /etc/ssh/ssh_config /etc/ssh/ssh_config.bak # 备份SSH客户端配置文件(可选)
根据CentOS版本选择对应命令,同步软件包仓库的最新信息:
sudo yum makecache
sudo dnf makecache
通过包管理器更新系统所有可更新软件包(包括OpenSSH),确保SFTP组件同步升级:
sudo yum update -y # 更新所有可更新软件包
sudo dnf update -y # 更新所有可更新软件包
注:若默认仓库中OpenSSH版本较旧,可添加EPEL仓库(CentOS 7)或启用PowerTools仓库(CentOS 8+)获取更新版本。例如CentOS 7添加EPEL:
sudo yum install epel-release -y
更新完成后,重启SSH服务使新版本生效,并验证服务状态:
sudo systemctl restart sshd # 重启SSH服务
sudo systemctl status sshd # 检查服务运行状态(需显示“active (running)”)
通过以下命令确认SFTP(属于OpenSSH组件)已更新至最新版本:
sftp -V # 显示SFTP客户端及服务器版本信息(如“OpenSSH_8.5p1”)
ssh -V # 显示SSH服务器版本(与SFTP版本一致)
确保防火墙允许SSH连接(默认端口22),并根据需要调整SELinux策略:
sudo firewall-cmd --permanent --add-service=ssh # 允许SSH服务
sudo firewall-cmd --reload # 重新加载防火墙规则
sudo setenforce 0 # 临时关闭SELinux(重启后恢复)
如需永久修改,编辑/etc/selinux/config文件,将SELINUX=enforcing改为SELINUX=permissive。zlib-devel、openssl-devel)。Development Tools、zlib-devel、openssl-devel等依赖),但此方法维护成本较高,非必要不推荐。