Debian Linux下vsftpd+mysql虚拟用户作法
来源: 作者: 出处:综艺读书 2007-04-02今天闲来无事做了个ftp,原因很简单就是为了能在别处看到的好东西直接放到我的机器上,嘿嘿!linux下选择ftp服务器还真是不容易,经过一阵思索后就选择了vsftpd,理由就是它号称是linux下最安全的ftp服务器还有还有好多的大型站点都用它来做服务器(这样用起来也比较有面子 :) )。
|
|
|||
第一步:
安装vsftpd
apt-get install vsftpd (Debian就是爽啊!)
系统会自动生成一个配置文件和一个ftp用户供匿名用户使用,vsftpd使用pam方式来验证虚拟用户,因为虚拟用户的信息保存在数据库中,所以我们还需要一个能够读取数据库内容的本地用户,而且还需要设置它的本地目录:
#mkdir /var/ftp
#useradd -d ftpguest /var/ftp
#chown ftpguest.nogroup /var/ftp
第二步:安装mysql
apt-get install mysql-server mysql-clent
建立数据库,并添加用户
#mysql -p mysql>create ftpu;
mysql>use ftpu;
mysql>create table user(name char(20) binary,passwd char(20) binary);
mysql>insert into user (name,passwd) values ('test1',password('1234567'));
mysql>insert into user (name,passwd) values ('test2',password('7654321'));
mysql>quit
让ftpguest能访问ftpu和表user:
#mysql -u root mysql -p mysql>grant select on ftpu.user to ftpguest@localhost identified by '123456';
mysql>quit
第三步:因为vsftpd是通过PAM验证,所以我们还需要一个mysql通过PAM验证的包,在Debian下它叫做libpam-mysql
apt-get install libpam-mysql
然后打开vsftpd的pam验证:
#vi /etc/pam.d/vsftpd
将以前的内容注释掉,然后加入以下内容:
auth required pam_mysql.so user=ftpguest passwd=123456 host=localhost db=ftpu table=user usercolumn=name passwdcolumn=passwd crypt=2
account required pam_mysql.so user=ftpguest passwd=123456 host=localhost db=ftpu table=user usercolumn=name passwdcolumn=passwd crypt=2
上面的内容应该能看明白吧,那个crypt=2表示经过mysql的password()机密后的东西!
第四步:修改vsftpd.conf文件
#vi /etc/vsftpd.conf
加入:
uest_enable=yes
guest_username=ftpguest
#表示ftpguest为vsftp的虚拟用户
virtual_use_local_privs=yes
#虚拟用户与本地用户有相同的权限
write_enable=yes
anon_upload_enable=yes
anon_other_write_enable=yes
#允许虚拟用户上传,修改和删除文件
chroot_local_user=yes
#虚拟用户只能访问自己的目录
anonymous_enable=no
local_enable=yes
#关闭匿名用户访问,开启本地用户访问
第五步:
本来来到第四步已经完成了,可是后来一想,不对,那要是每次上传的东西都不同,到时把那个目录弄得乱七八糟的怎么管理啊,能不能为每个虚拟用户创建一个目录呢,比如说将music用户上传的文件放在放在~/music下,将doc用户上传的文件放在~/doc下呢?
能!当然能了,看看我怎么做?
首先在数据库中添加music和doc两个虚拟用户接下来:
#mkdir /etc/vsftpd_user_conf
#cd /etc/vsftpd_user_conf
#touch music
#echo "local_root=/home/username/music" > music
#touch doc
#echo "local_root=/home/username/doc" > doc
#mkdir /home/username/music
#chown ftpguest.nogroup /home/username/music
#chmod 600 /home/username/music
#chown ftpguest.nogroup /home/username/doc
#chmod 600 /home/username/doc
然后在vsftpd.conf中加入: user_config_dir=/etc/vsftpd_user_conf
大功告成,你明白了吗?
参考资料:
http://www.gbunix.com/article/article.php/427
http://dev.csdn.net/article/33/33451.shtm
·Linux集群技术 (6954篇文章)
·MySQL (1570篇文章)
·MySQL安全 (8149篇文章)
·体验Linux的音影世界 (6717篇文章)
·Linux驱动大全 (7285篇文章)
·Linux下的路由的配置与应用 (9832篇文章)
·Linux命令简介 (8229篇文章)
·城域网专题 (6645篇文章)
·Linux防火墙 (8139篇文章)
·快速掌握MySQL数据库中SELECT语句 (0次浏览)
·数据库新手入门之MYSQL出错代码列表 (0次浏览)
·MySQL 5.0新特性教程 存储过程:第二讲 (0次浏览)
·教你如何在MySQL数据库中直接储存图片 (0次浏览)
·使用ODBC接口访问MySQL (4次浏览)
·如何使用ODBC接口访问MySQL (4次浏览)
·如何利用MySQL加密函数保护网站敏感数据 (0次浏览)
·快速掌握MySQL数据库中SELECT语句 (0次浏览)
·数据库新手入门之MYSQL出错代码列表 (0次浏览)
·MySQL 5.0新特性教程 存储过程:第二讲 (0次浏览)
·教你如何在MySQL数据库中直接储存图片 (0次浏览)
·MySQL是否值得我们选择的正反五个理由 (0次浏览)
·MS SQL Server MFC DAO 类和 MFC ODBC 类:我 (59次浏览)
·动态创建MSSQL数据库表存储过程 (43次浏览)
·Windows环境下的MySQL: 一场精彩漂亮的比赛 (42次浏览)
·详细讲解MySQL 4.1数据如何转换 (36次浏览)
·MySQL 4.1 数据如何转换详细讲解 (35次浏览)
·UNIX设置MySql数据同步 实现复制功能 (29次浏览)
·MySQL宣布Cluster数据库基准测试结果 (21次浏览)
·在.NET环境下访问MySQL数据库 (13次浏览)
·影响MySQL中mysqld安全的四个选项 (11次浏览)
·快速掌握MySQL数据库中SELECT语句 06-22
·数据库新手入门之MYSQL出错代码列表 06-20
·MySQL 5.0新特性教程 存储过程:第二讲 06-17
·教你如何在MySQL数据库中直接储存图片 06-16
·MySQL是否值得我们选择的正反五个理由 06-15
·如何使用ODBC接口访问MySQL 06-07
·使用ODBC接口访问MySQL 06-07
·在.NET环境下访问MySQL数据库 06-04
·搞定MySQL数据库中文模糊检索问题 05-31
|
|||
| ·ACDSEE专题教程-下载使用 ·迅雷专题教程-下载使用 ·Windows XP频道 ·Windows Vista频道 ·Windows 2000频道 ·win2003频道 ·Freebsd频道 ·Oracle频道 |
·Linux频道 ·Windows频道 ·邮件服务器专题 ·协议大全 ·数据恢复指南教程 ·FreeBSD使用教程 ·Linux数据库宝典 ·Linux基础知识 |
||
| · 秘密:Vista隐蔽的动态屏保 · 腾讯开发新电子宠物--QQ熊 · 惠普否认2999元PC有价无货 |
· 驱逐Win系统“流氓”文件 · WinXP中获取未使用的IP地址 · 尝试format C:格式化硬盘? |
| · 在DOS下恢复回收站中的文件 · 拯救WinXP崩溃的救命稻草 · Linux系统中超级权限的应用 |
· 搜狗PK谷歌:谁能代言拼... · 昨日重现,一键GHOST轻松.. · 实现Web迅雷在空闲时杀毒 |
| · AVIFile函数制做AVI文件 · VC中链接动态链接库的方法 · 熊猫烧香核心源码(Delphi) |
· DateDiff函数祥解 · JavaScript去除空格的三种 · js效果 图片加载进度实时.. |
| · SQL Server数据库优化方案 · Oracle的初学者入门心得 · JSP连接Mysql数据库 |
· Photoshop为美女做艺术处理 · 用Freehand创建发光字特效 · 设计自己的个性QQ动态表情 |




