centos

如何在CentOS上配置SFTP

小樊
45
2025-04-20 19:04:58
栏目: 智能运维

在CentOS上配置SFTP(SSH文件传输协议)通常涉及编辑SSH服务器的配置文件,并设置适当的权限和用户访问控制。以下是一个基本的步骤指南:

1. 安装OpenSSH服务器

如果尚未安装OpenSSH服务器,请使用以下命令进行安装:

sudo yum install openssh-server

2. 启动并启用SSH服务

启动SSH服务并设置为开机自启:

sudo systemctl start sshd
sudo systemctl enable sshd

3. 配置SSH服务器

编辑SSH服务器的配置文件 /etc/ssh/sshd_config

sudo vi /etc/ssh/sshd_config

在文件中找到并修改以下行:

# 默认情况下,SFTP子系统是启用的
Subsystem sftp /usr/libexec/openssh/sftp-server

# 允许SFTP用户登录
Match Group sftpusers
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no
    X11Forwarding no

4. 创建SFTP用户组

创建一个专门用于SFTP用户的组:

sudo groupadd sftpusers

5. 添加SFTP用户

添加一个新用户并将其添加到SFTP用户组中。例如,添加用户 sftpuser

sudo useradd -m -G sftpusers sftpuser
sudo passwd sftpuser

在提示时输入并确认密码。

6. 设置用户主目录权限

确保SFTP用户的主目录权限设置正确,以便ChrootDirectory能够正常工作:

sudo chown root:root /home/sftpuser
sudo chmod 755 /home/sftpuser

7. 创建SFTP用户的Chroot目录

为SFTP用户创建一个Chroot目录,并设置适当的权限:

sudo mkdir /home/sftpuser/uploads
sudo chown sftpuser:sftpusers /home/sftpuser/uploads

8. 重启SSH服务

应用配置更改并重启SSH服务:

sudo systemctl restart sshd

9. 测试SFTP连接

使用SFTP客户端连接到服务器,验证配置是否正确:

sftp sftpuser@your_server_ip

注意事项

通过以上步骤,你应该能够在CentOS上成功配置SFTP服务。

0
看了该问题的人还看了