vsftpd+pam创建虚拟用户登录FTP服务器
# echo "anon_upload_enable=YES" >> /etc/vsftpd/user_config_dir/test2
# vi /tmp/logins.txt
test2
建立数据库文件 /etc/vsftpd_login.db ,同时改变它的文件属性:
3、生成新的数据库文件
guest_enable=YES /#允许虚拟用户登录
//给用户test1和test2赋予访问目录权限
# chmod 600 /etc/vsftpd_login.db
以上权限可根据自己的需要设置。
只需重新运行db_load就可以,既:二、以root用户登录系统,建立用户数据库
anonymous_enable=NO
# /etc/rc.d/init.d/vsftpd stop|start|restart
#echo "anon_world_readable_only=NO">/etc/vsftpd/user_config_dir/test2
或
# vi /etc/vsftpd/vsftpd.conf,在后面加上(我的配置中只保留了一下内容): # echo "write_enable=YES" >> /etc/vsftpd/user_config_dir/test2
tcp_wrappers=YES
# vi /etc/vsftpd/user_config_dir/username pam_service_name=vsftpd
一、建立虚拟用户数据库
listen_port=21
# mkdir /ftp/username
告诉系统,将新用户授权库了。
# db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db# mkdir /etc/vsftpd/user_config_dir
# vi /etc/pam.d/vsftpd /**这个文件与vsftpd.conf中的pam_service_name=vsftpd相对应
# echo "anon_mkdir_write_enable=YES" >> /etc/vsftpd/user_config_dir/test2
pwtest2
# rm /etc/vsftpd_login.db
2、删除数据库文件
//给用户test1和test2赋予写入权限
只需修改用户的配置文件
# echo "anon_upload_enable=YES" >> /etc/vsftpd/user_config_dir/test1
local_enable=YES
内容:
vsftpd虚拟用户
用test1和pwtest1远处FTP登录测试是否正常,并且测试权限是否生效,如果没有问题就可以喝茶了,哈哈!
复制代码 代码如下:
# echo "anon_other_write_enable=YES" >> /etc/vsftpd/user_config_dir/test1在RedHat AS里,自带了vsftpd,但实际应用还需要自己进行很多的配置。
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login cryp=hash pwtest1
//给用户test1和test2赋予建立目录权限
# vi /tmp/logins.txt 它的内容是:
3、执行数据库命令
listen=YES
三、建立PAM文件,告诉系统你要使用自己的数据库
# db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db #没有db-load需要安装db4-utils 的包# vi /tmp/logins.txt
# echo "anon_mkdir_write_enable=YES" >> /etc/vsftpd/user_config_dir/test1
connect_from_port_20=YES
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login crypt=hash
八、测试FTP登陆及操作权限
六、建立用户配置文档
复制代码 代码如下:
虚拟用户的信息,格式:# db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db
2、添加用户名和密码
<用户名>
# useradd -d /ftp -s /sbin/nologin virtual
#echo "anon_world_readable_only=NO">/etc/vsftpd/user_config_dir/test1
四、为虚拟用户建立文件夹并授权
# db_load -T -t hash -f /tmp/logins.txt /etc/vsftpd_login.db
db=/etc/vsftpd_login是和上一步建立的文件相对应,只是在PAM文件里不能写后缀名".db" 十、删除用户说明
1、删除用户名和密码
pam文件中在最后需要加上 crypt=hash ,官方文档中没有加会出现 vsftpd: OOPS: priv_sock_get_result 的错误。
guest_username=virtual /#指定虚拟用户映射到virtual系统用户
test1
# echo "write_enable=YES" >> /etc/vsftpd/user_config_dir/test1
五、修改vsftpd.conf文件
十二、改变用户配置
七、重启vsftpd
九、添加用户说明
<密 码> # echo "anon_other_write_enable=YES" >> /etc/vsftpd/user_config_dir/test2
1、建立用户目录
# echo "local_root=/ftp/test2" >> /etc/vsftpd/user_config_dir/test2
4、建立用户配置文档 我们知道,在建立vsftpd用户时,我们一般是在linux下建立用户useradd的方式来访问ftp,但有时我们只想提供ftp服务,而避免用户用ftp的帐号去登录linux,采用一般的方式只能是限制该用户的访问权限,但还是避免不了用户登录进linux系统,所以比较好的方法是用vsftpd的虚拟用户(virtual users)。
复制代码 代码如下:
十一、修改用户的密码
# echo "local_root=/ftp/test1" >> /etc/vsftpd/user_config_dir/test1
相关热词: 服务器
本站内容来源于网络,如有侵权请与我们联系,我们会及时删除,我们深感抱歉!
注:本站所有信息仅供用于网络技术学习参考,学习中请遵循相关法律法规!
本文地址: https://v30.fanwenzhu.com/jq/jc/7003.shtml
相关文章
热门TAG
win10 ecshop 主机 阿里云 解决 配置 C# C++ 解析 SQL语句 命令 Go语言 方法 CSS3 HTML5 CSS win7 MSSQL 服务器配置 IIS7.5 IIS7 IIS6 IIS CentOS 7 Linux oracle数据库 oracle phpcms discuz discuz教程最新文章
-
PHP识别相片是否是颠倒的
时间:2020-12-28
-
python编程有哪些ide
时间:2020-12-28
-
python开发工程师是做什么
时间:2020-12-28
-
php构造函数的作用
时间:2020-12-28
-
php怎么跟数据库连接
时间:2020-12-28
-
php实现顺序线性表
时间:2020-12-28
-
Python多重继承中的菱形继
时间:2020-12-28
-
php中break的作用
时间:2020-12-28
热门文章
-
php中常用的正则表达式使用方法
时间:2020-12-25
-
asp与php区别是什么?
时间:2020-12-27
-
PHP识别相片是否是颠倒的,并且重新摆正
时间:2020-12-28
-
Yii授权之基于角色的存取控制 (RBAC)
时间:2020-12-23
-
php的一键安装包有哪些 php环境搭建
时间:2020-12-19
-
php实现对图片对称加解密(适用身份证加
时间:2020-12-25
-
php如何理解面向对象
时间:2020-12-28
-
超详细分析php docker的原理及作用
时间:2020-12-27
-
Python控制Excel实现自动化办公
时间:2020-12-23
-
session的作用是什么
时间:2020-12-25
