1. 更新系统
首先,确保系统软件包为最新版本,避免兼容性问题:
sudo yum update -y
2. 安装OpenSSH服务器
SFTP依赖OpenSSH服务,通过以下命令安装:
sudo yum install openssh-server -y
3. 启动并启用SSH服务
安装完成后,启动SSH服务并设置为开机自启,确保系统重启后服务仍运行:
sudo systemctl start sshd
sudo systemctl enable sshd
4. 配置SSH以启用SFTP
编辑SSH主配置文件,启用SFTP子系统并限制用户访问:
sudo vi /etc/ssh/sshd_config
- 确保SFTP子系统未被注释(默认已启用):
Subsystem sftp internal-sftp - 添加以下内容(限制指定用户组只能使用SFTP,且锁定根目录):
Match Group sftpusers ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no X11Forwarding no注:
%h表示用户家目录,internal-sftp为内置SFTP服务,无需额外安装。
5. 创建SFTP用户组及用户
- 创建专用用户组(用于管理SFTP用户权限):
sudo groupadd sftpusers - 创建用户并加入组(以
mysftp为例,设置家目录并禁用Shell登录):sudo useradd -m -G sftpusers -s /bin/false mysftp - 设置用户密码(增强账户安全性):
sudo passwd mysftp
6. 设置用户根目录权限
SFTP用户的根目录必须归root所有,且权限为755(防止用户越权修改目录结构):
sudo chown root:root /home/mysftp
sudo chmod 755 /home/mysftp
- 创建可写入的子目录(用户需上传文件时,需在根目录下创建子目录并赋予权限):
sudo mkdir /home/mysftp/files sudo chown mysftp:sftpusers /home/mysftp/files
7. 配置防火墙(若启用)
允许SSH(默认端口22)通过防火墙,确保外部客户端可连接:
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
8. 重启SSH服务应用配置
使上述配置生效,重启SSH服务:
sudo systemctl restart sshd
9. 测试SFTP连接
使用SFTP客户端(如命令行或FileZilla)验证连接:
sftp mysftp@your_server_ip
输入密码后,若成功登录并显示用户根目录(如/home/mysftp),则说明配置成功。
以上就是关于“SFTP在CentOS上的安装步骤是什么”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm