无错版Vsftpd+Mysql+Pam配置虚拟用户方法
2007-08-08 00:00:00 来源:WEB开发网核心提示: [root@hpe45 vsftpd]#mysql -u vsftpdguest -pi52serial0 vsftpdvumysql>;select * from users;如果成功,将会列出xiaotong、xiaowang和加密后的密码五、设置MySQL的PAM验证这里我们要用到一
[root@hpe45 vsftpd]#mysql -u vsftpdguest -pi52serial0 vsftpdvu
mysql>;select * from users;
如果成功,将会列出xiaotong、xiaowang和加密后的密码
五、设置MySQL的PAM验证
这里我们要用到一个利用mysql进行pam验证的开源项目(http://sourceforge.net/projects/pam-mysql/)。首先从网站下载它的程序包pam_myql-0.5.tar.gz,复制到/root目录中。在编译安装之前,要确保mysql-devel的RPM包已经安装在你的机器上,如果没有请从RHL安装光盘中安装该包。然后,执行以下命令:
[root@hpe45 root]#tar xvzf pam_mysql-0.5.tar.gz
[root@hpe45 root]#cd pam_mysql
[root@hpe45 pam_mysql]#make
[root@hpe45 pam_mysql]#make install
make install这一步可能会出现错误,那只好手动将该目录下生成的pam_mysql.so复制到/lib/security目录下。
接下来,我们要设置vsftpd的PAM验证文件。打开/etc/pam.d/ftp文件,加入以下内容:
auth required pam_mysql.so user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
account required pam_mysql.so user=vsftpdguest passwd=i52serial0 host=localhost db=vsftpdvu table=users usercolumn=name passwdcolumn=passwd crypt=2
上面涉及到的参数,只要对应前面数据库的设置就可以明白它们的含义。这里需要说明的是crypt参数。crypt表示口令字段中口令的加密方式:crypt=0,口令以明文方式(不加密)保存在数据库中;crypt=1,口令使用UNIX系统的DES加密方式加密后保存在数据库中;crypt=2,口令经过MySQL的password()函数加密后保存。
更多精彩
赞助商链接