centos

如何在CentOS上配置SFTP多用户共享

小樊
40
2025-08-24 19:26:58
栏目: 智能运维

在CentOS上配置SFTP多用户共享可以通过以下步骤实现。这里我们使用vsftpd作为SFTP服务器,并配置多个用户访问同一个共享目录。

步骤1:安装vsftpd

首先,确保你的CentOS系统已经安装了vsftpd。如果没有安装,可以使用以下命令进行安装:

sudo yum install vsftpd

步骤2:配置vsftpd

编辑vsftpd的配置文件/etc/vsftpd/vsftpd.conf,进行必要的配置。

sudo vi /etc/vsftpd/vsftpd.conf

在配置文件中添加或修改以下内容:

# 启用本地用户登录
local_enable=YES

# 启用写权限
write_enable=YES

# 启用chroot jail
chroot_local_user=YES

# 允许用户写入自己的主目录
allow_writeable_chroot=YES

# 配置匿名用户访问(可选)
anonymous_enable=NO

# 配置虚拟用户(可选)
guest_enable=YES
guest_username=ftpuser

# 配置PAM认证
pam_service_name=vsftpd

步骤3:创建共享目录

创建一个共享目录,并设置适当的权限,以便所有用户都可以访问和写入。

sudo mkdir -p /home/ftpuser/shared
sudo chown root:root /home/ftpuser/shared
sudo chmod 775 /home/ftpuser/shared

步骤4:配置用户访问

为了允许多个用户访问同一个共享目录,我们可以使用chrootvirtual users。这里我们使用virtual users

4.1 创建虚拟用户数据库

创建一个虚拟用户数据库文件,并添加用户信息。

sudo touch /etc/vsftpd/virtual_users.txt
sudo vi /etc/vsftpd/virtual_users.txt

在文件中添加用户信息,格式如下:

username1
password1
username2
password2

4.2 创建PAM配置文件

创建一个PAM配置文件,用于验证虚拟用户。

sudo vi /etc/pam.d/vsftpd.virtual

添加以下内容:

auth required pam_userdb.so db=/etc/vsftpd/virtual_users.txt
account required pam_userdb.so db=/etc/vsftpd/virtual_users.txt

4.3 修改vsftpd配置文件

再次编辑vsftpd的配置文件,启用虚拟用户支持。

sudo vi /etc/vsftpd/vsftpd.conf

添加或修改以下内容:

# 启用虚拟用户
guest_enable=YES
guest_username=ftpuser

# 使用PAM认证
pam_service_name=vsftpd.virtual

步骤5:重启vsftpd服务

保存并退出所有配置文件后,重启vsftpd服务以应用更改。

sudo systemctl restart vsftpd

步骤6:测试SFTP连接

使用SFTP客户端连接到服务器,测试是否可以正常访问共享目录。

sftp username1@your_server_ip

输入密码后,你应该能够访问/home/ftpuser/shared目录。

通过以上步骤,你可以在CentOS上配置SFTP多用户共享。根据实际需求,你可以进一步调整配置以满足特定的安全和管理要求。

0
看了该问题的人还看了