CentOS快速配置SFTP步骤
SFTP(SSH File Transfer Protocol)是基于SSH的安全文件传输协议,配置SFTP的核心是通过OpenSSH服务器实现,以下是快速配置流程:
1. 安装OpenSSH服务器
确保系统已安装OpenSSH服务器(默认可能已安装),若未安装,执行以下命令:
sudo yum install openssh-server -y
2. 启动并启用SSH服务
安装完成后,启动SSH服务并设置为开机自启,保证服务持续运行:
sudo systemctl start sshd
sudo systemctl enable sshd
3. 配置SFTP子系统与访问规则
编辑SSH主配置文件/etc/ssh/sshd_config,修改以下关键参数:
- 启用内置SFTP子系统(默认路径,无需修改):
Subsystem sftp internal-sftp - 限制用户组仅能使用SFTP(避免普通SSH登录):
Match Group sftpusers ChrootDirectory %h # 将用户根目录限制为其主目录 ForceCommand internal-sftp # 强制使用SFTP,禁用SSH shell AllowTcpForwarding no # 禁止TCP转发 X11Forwarding no # 禁止X11转发注:
Match Group sftpusers表示仅sftpusers组的用户受此规则限制。
4. 创建SFTP专用用户组与用户
- 创建用户组(用于管理SFTP用户):
sudo groupadd sftpusers - 创建用户并加入组(以
ftpuser为例):sudo useradd -m -G sftpusers ftpuser # `-m`创建家目录,`-G`加入sftpusers组 sudo passwd ftpuser # 设置用户密码 - 禁止用户使用SSH登录(增强安全性):
sudo usermod -s /sbin/nologin ftpuser
5. 设置Chroot目录权限
SFTP用户的根目录需设为不可写(防止用户修改自身根目录结构),子目录设为可写(用于存放文件):
- 设置家目录权限(
%h代表用户家目录,如/home/ftpuser):sudo chown root:root /home/ftpuser sudo chmod 755 /home/ftpuser - 创建并设置子目录(如
upload目录,用于文件上传):sudo mkdir -p /home/ftpuser/upload sudo chown ftpuser:sftpusers /home/ftpuser/upload # 子目录所有者为用户,组为sftpusers sudo chmod 755 /home/ftpuser/upload
6. 重启SSH服务应用配置
修改配置文件后,重启SSH服务使更改生效:
sudo systemctl restart sshd
7. 测试SFTP连接
使用SFTP客户端(如命令行、WinSCP、FileZilla)连接服务器,验证配置是否成功:
sftp ftpuser@your_server_ip
输入密码后,若能进入SFTP命令行界面(显示sftp>),则表示配置成功。可通过ls、put、get等命令测试文件操作。
额外安全建议
- 防火墙配置:允许SSH(默认端口22)流量通过,若使用firewalld,执行:
sudo firewall-cmd --permanent --add-service=ssh sudo firewall-cmd --reload - SELinux调整:若启用了SELinux,需允许SFTP访问用户目录,执行:
sudo setsebool -P ssh_chroot_rw_homedirs on
通过以上步骤,即可在CentOS上快速搭建一个安全的SFTP服务器,满足基本的文件传输需求。
以上就是关于“如何快速配置centos sftp”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm