设为首页 收藏本站
查看: 508|回复: 0

[经验分享] vsftpd-mysql配置虚拟用户

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-2-4 08:49:29 | 显示全部楼层 |阅读模式
实验环境:
1
2
3
Linux centos-server 2.6.32-504.el6.x86_64
vsftpd-2.2.2-13.el6_6.1.x86_64
mysql-5.1.73-3.el6_5.x86_64




搭建所需环境:
1
2
yum install mysql mysql-server openssl pam-devel
yum -y groupinstall "Development Tools" "Development Libraries"




安装pam_mysql:
1
2
3
4
5
6
7
8
9
wget http://ncu.dl.sourceforge.net/pr ... mysql-0.7RC1.tar.gz
tar zxvf  pam_mysql-0.7RC1.tar.gz
cd  pam_mysql-0.7RC1
./configure --with-pam=/usr/ --with-mysql=/usr/bin/mysql_config --with-openssl
make && make install
  
安装完成以后在/lib/security/下会多出个pam_mysql.la和pam_mysql.so
[iyunv@centos-server ~]# ls /lib/security/
pam_mysql.la  pam_mysql.so




安装vsftp:
1
yum -y install vsftpd




在mysql中新建用户"vsftpd"用于vsftpd查询,并且新建vsftpd表并创建虚拟用户"down"和"up":
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
mysql> create database vsftpd;

mysql> grant select on vsftpd.* to vsftpd@localhost identified by 'dragon';

mysql> create table user(
    -> id int AUTO_INCREMENT NOT NULL primary key,
    -> name char(20) binary NOT NULL,
    -> password char(48) binary NOT NULL,
    -> );

    mysql> insert into user(name,password) values('down','qwe123');
Query OK, 1 row affected (0.00 sec)

mysql> insert into user(name,password) values('up','qwe123');
Query OK, 1 row affected (0.00 sec)





配置pam通过mysql认证:

1
2
3
4
[iyunv@centos-server ~]# cat >>/etc/pam.d/vsftpd.mysql<< end
auth required /lib/security/pam_mysql.so user=vsftpd passwd=dragon host=localhost db=vsftpd table=user usercolumn=name passwdcolumn=password crypt=0
account required /lib/security/pam_mysql.so user=vsftpd passwd=dragon host=localhost db=vsftpd table=user usercolumn=name passwdcolumn=password crypt=0
end





添加虚拟用户宿主用户:
1
2
[iyunv@centos-server ~]# useradd -s /sbin/nologin  -d /var/ftp/v vuser1
[iyunv@centos-server ~]# chmod o+rx /var/ftp/v/




创建虚拟用户“UP”的配置文件,浏览+下载+上传+创建目录+删除:
1
2
3
4
5
6
7
8
[iyunv@centos-server ~]# cat >>/etc/vsftpd/vuser_dir/up <<end
local_root /var/ftp/v/up
anon_world_readable_only=no #可浏览
write_enable=yes#可写
anon_upload_enable=yes #可上传,需要write_enable=yes
anon_other_write_enable=yes
anon_mkdir_write_enable=yes #可创建目录
end




创建虚拟用户“down”的配置文件,可下载:
1
2
3
4
5
6
[iyunv@centos-server ~]# cat >>/etc/vsftpd/vuser_dir/down<<end
local_root=/var/ftp/v/down
download_enable=YES
write_enable=NO
anon_upload_enable=NO
end




创建虚拟用户的根目录
1
2
3
4
[iyunv@centos-server ~]# mkdir /var/ftp/v/down
[iyunv@centos-server ~]# chown -R vuser1.vuser1 /var/ftp/v/down/
[iyunv@centos-server ~]# mkdir /var/ftp/v/up
[iyunv@centos-server ~]# chown -R vuser1.vuser1 /var/ftp/v/up




在vsftpd.conf的添加以下配置
1
2
3
4
5
6
7
[iyunv@centos-server ~]# tail -n 6 /etc/vsftpd/vsftpd.conf
pam_service_name=vsftpd.mysql  #pam认证文件
userlist_enable=YES   #开启用户访问控制列表
tcp_wrappers=YES#开启tcp_wrappers访问控制
guest_enable=YES#开启虚拟用户功能
guest_username=vuser1#虚拟用户宿主用户
user_config_dir=/etc/vsftpd/vuser_dir #配置虚拟用户文件目录




暂时SELINUX:
1
setenforce 0




[iyunv@centos-server ~]# service vsftpd restart

测试效果:
  • 用户up可登录和上传:


QQ截图20150204084518.png
QQ截图20150204084523.png

2.用户“down”可登录,创建和上传操作被拒绝:
QQ截图20150204084528.png
QQ截图20150204084533.png


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-41947-1-1.html 上篇帖子: mysql中的约束check 下篇帖子: Django Python MySql 问题集锦 用户
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表