iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >vsftpd操作——配置虚拟用户登录的详细步骤
  • 517
分享到

vsftpd操作——配置虚拟用户登录的详细步骤

服务器linux运维 2023-09-06 13:09:03 517人浏览 泡泡鱼
摘要

笔者重新整理了文章的结构和内容,看这篇会舒服很多Linux笔记之配置vsftpd服务的虚拟用户登录 配置虚拟用户,使用独立的用户帐号进行登录vsftp 1.环境准备 安装vsftpd及相关组件 rpm -qa | grep vsftpd

笔者重新整理了文章的结构和内容,看这篇会舒服很多Linux笔记之配置vsftpd服务的虚拟用户登录

配置虚拟用户,使用独立的用户帐号进行登录vsftp


1.环境准备

安装vsftpd及相关组件
rpm -qa | grep vsftpd # 查看系统是否已安装
yum install vsftpd -y

安装依赖组件libdb,libdb-utils,默认已安装
rpm -qa | grep libdb-utils
安装该组件
yum install libdb libdb-utils -y

关闭防火墙,关闭selinux,守护进程
systemctl disable firewalld && systemctl stop firewalld
setenforce 0

建立虚拟用户口令库文件
格式:
用户名
密码
添加虚拟用户tom,jack
cd /etc/vsftpd/
# cat >>vusers.list< tom
tom123
jack
jack123
eof

生成vsftpd的认证文件
注意:生成认证文件,以后新加或删除用户以后重新运行本命令
db_load -T -t hash -f /etc/vsftpd/vusers.list /etc/vsftpd/vsftpd_login.db

可以选择生成一个用户脚本文件,用于保存该命令,方便快捷执行
cat >>/etc/vsftpd/adduser.sh< #!/bin/bash
db_load -T -t hash -f /etc/vsftpd/vusers.list /etc/vsftpd/vsftpd_login.db
EOF
# 修改脚本文件的权限
chmod o+x /etc/vsftpd/adduser.sh

为认证用户文件赋权
# chmod 600 /etc/vsftpd/vsftpd_login.db

建立虚拟用户所需的PAM配置文件
mv /etc/pam.d/vsftpd{,.bak}
cat >/etc/pam.d/vsftpd< #%PAM-1.0
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd/vsftpd_login
EOF

建立虚拟用户要访问的目录并设置权限
#mkdir -p /data/ftp/

#定义vsftpd虚拟用户vuser,宿主目录/data/ftp
#useradd -d /data/ftp -s /sbin/nologin vuser

#修改宿主目录的属主和属组
#chown -R vuser:vuser /data/ftp/

创建用户的个人目录,每一个用户对应一个ftp主目录文件,
mkdir -p /data/ftp/{tom,jack}

为用户目录定义权限
chown -R vuser:vuser /data/ftp/tom  /data/ftp/jack

备份,cp  /etc/vsftpd/vsftpd.conf{,.bak}
在 vsftpd.conf 添加以下参数配置项:
anonymous_enable=NO
local_enable=YES
listen=YES
listen_ipv6=NO
#standalone模式,独立服务
xferlog_enable=YES
xferlog_file=/var/log/xferlog
xferlog_std_fORMat=YES
#启用日志
guest_enable=YES
#启用虚拟用户
guest_username=vuser
#定义虚拟用户名
allow_writeable_chroot=YES
chroot_local_user=YES
#禁锢在宿主目录则使用
user_config_dir=/etc/vsftpd/vsftpd_user_conf
#定义每个用户的配置文件夹
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999
#被动模式

对不同虚拟用户设置不同权限 
创建虚拟用户配置文件夹
 mkdir /etc/vsftpd/vsftpd_user_conf

建立用户tom单独配置文件,文件名就是用户名,与vusers.list中的用户名相同
cat >/etc/vsftpd/vsftpd_user_conf/tom< local_root=/data/ftp/tom
chroot_local_user=YES
write_enable=YES
virtual_use_local_privs=YES
EOF

建立用户jack单独配置文件
cat >/etc/vsftpd/vsftpd_user_conf/jack< local_root=/data/ftp/jack
chroot_local_user=YES
write_enable=YES
virtual_use_local_privs=YES
EOF

参数说明:
local_root=/data/ftp/tom
#这里的虚拟用户目录可以修改,/data/ftp/tom目录提前建立,赋权vuser用户可以写入

chroot_local_user=YES
禁锢在宿主目录则使用

write_enable=YES
#可以对虚拟用户用写入

virtual_use_local_privs=YES
#虚拟用户具有写权限(上传、下载、删除、重命名)
如果只具用下载权限,则只保留local_root=/data/ftp/tom

最终效果如下:
#查看用户tom的配置文件
cat  /etc/vsftpd/vsftpd_user_conf/tom
local_root=/data/ftp/tom
chroot_local_user=YES
write_enable=YES
virtual_use_local_privs=YES

#查看用户jack的配置文件
cat  /etc/vsftpd/vsftpd_user_conf/jack 
local_root=/data/ftp/jack
chroot_local_user=YES
write_enable=YES
virtual_use_local_privs=YES

启动服务
systemctl start vsftpd

服务开机自启
systemctl enable vsftpd

可以在window系统使用客户端(比如FileZilla),连接服务器ip,使用账号tom或者jack登录进行操作

其他配置
可以为各用户分别配置,修改/etc/vsftpd/vsftpd_user_conf/jack,添加如下内容即可
max_clients=0
设置vsftpd允许的最大连接数,默认值为0,表示不受限制。若设置为100时,则同时允许有100个连接,超出的将被拒绝。只有在standalone模式运行才有效。
max_per_ip=0
设置每个IP允许与FTP服务器同时建立连接的数目。默认值为0,表示不受限制。只有在standalone模式运行才有效。

local_max_rate设置项 用于设置本地用户的最大传输速率,单位为B/s,值为0时表示不限制。
例如local_max_rate=500000表示FTP服务器的本地用户最大传输速率设置为500KB/s.

最终完整配置vsftpd.conf如下所示
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/xferlog
xferlog_std_format=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=vuser
allow_writeable_chroot=YES
chroot_local_user=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
pasv_enable=YES
pasv_min_port=30000
pasv_max_port=30999

来源地址:https://blog.csdn.net/owenxiaobai/article/details/128150612

--结束END--

本文标题: vsftpd操作——配置虚拟用户登录的详细步骤

本文链接: https://www.lsjlt.com/news/397115.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作