一.MySQL的安装与配置
1.使用yum方式安装MySQL
[iyunv@vsftpd ~]# yum -y install mysql mysql-server mysql-devel
2.启动MySQL服务并修改MySQL管理员密码
[iyunv@vsftpd ~]# service mysqld start //启动mysql服务器
[iyunv@vsftpd ~]# mysqladmin -u root password vsftpd //修改MySQL root的密码为vsftpd
3.创建MySQL为vsftpd验证的数据库与表
[iyunv@vsftpd ~]# mysql -u root -p
Enter password: //此处输入vsftpd为刚刚为MySQL设置的管理员密码
mysql> create database vsftpd; //创建一个vsftpd的数据库
Query OK, 1 row affected (0.00 sec)
mysql> use vsftpd; //进入vsftpd数据库
mysql> create table users ( id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, name CHAR(15) NOT NULL UNIQUE KEY,password CHAR(48) NOT NULL );
//创建一个3个栏位的users表,一个id用于索引,name用于账户名,password用户设置密码
mysql> insert into users (name,password) values ('web',password('web'));
//添加一个web账户,密码为web,并加密存储密码,此账户是为了等下登录FTP服务器用
4.创建一个vsftpd的MySQL账户用于检索vsftpd数据库
mysql> grant select on vsftpd.* to vsftpd@localhost identified by 'vsftpd';
//创建一个只有select vsftpd数据库下所有表的权限的MySQL账户并将密码设为vsftpd
mysql> flush privileges;
//只为使权限即时生效
二.安装并配置PAM模块
1.安装依赖库
[iyunv@vsftpd ~]# yum -y install gcc gcc-c++ make pam pam-devel openssl openssl-devel
2.下载并安装pam_mysql
[iyunv@vsftpd ~]# wget http://nchc.dl.sourceforge.net/p ... mysql-0.7RC1.tar.gz
[iyunv@vsftpd ~]# tar zxvf pam_mysql-0.7RC1.tar.gz
[iyunv@vsftpd ~]# cd pam_mysql-0.7RC1
[iyunv@vsftpd pam_mysql-0.7RC1]# ./configure --with-openssl
[iyunv@vsftpd pam_mysql-0.7RC1]# make
[iyunv@vsftpd pam_mysql-0.7RC1]# make install
pam文件默认安装到/lib 目录下,若系统为64位系统,需要将文件复制一份到/lib64 目录下
[iyunv@vsftpd ~]# cp /lib/security/pam_mysql.* /lib64/security/
3.创建认证文件
[iyunv@vsftpd ~]# vim /etc/pam.d/ftp.mysql
auth required /lib64/security/pam_mysql.so user=vsftpd passwd=vsftpd host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
account required /lib64/security/pam_mysql.so user=vsftpd passwd=vsftpd host=localhost db=vsftpd table=users usercolumn=name passwdcolumn=password crypt=2
注意:这里是2行,不可以换行.另外还要注意里面相应栏位的填写。
特别说明下crypt选项
crypt=0:明文密码
crypt=1:使用 crpyt()函数(对应 SQL 数据里的 encrypt(),encrypt()随机产生 salt)
crypt=2:使用 MYSQL 中的 password()函数加密
crypt=3:表示使用 md5 的散列方式
三.vsftpd的安装与设置
1.使用yum方式安装vsftpd
[iyunv@vsftpd ~]# yum -y install vsftpd
2.备份vsftpd的配置文件
[iyunv@vsftpd ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak
3.修改vsftpd.conf
将anonymous_enable选项改为anonymous_enable=NO
将pam_service_name选项改为pam_service_name=ftp.mysql //这里更改为上面创建的认证文件名
并添加如下:
virtual_use_local_privs=YES
user_sub_token=$USER
local_root=/var/ftp/$USER
guest_enable=YES
guest_username=vsftpdguest
chroot_local_user=YES
user_config_dir=/etc/vsftpd/vsftpd_user_conf
4.创建一个vsftpdguest账户
[iyunv@vsftpd ~]# useradd -s /sbin/nologin -d /var/ftp vsftpdguest
5.在/etc/vsftpd/下面创建一个vsftpd_user_conf目录
[iyunv@vsftpd ~]# mkdir /etc/vsftpd/vsftpd_user_conf
[iyunv@vsftpd ~]# chown -R vsftpdguest:vsftpdguest /var/ftp
6.将MySQL服务器及vsftpd服务器开机启动
[iyunv@vsftpd ~]# chkconfig --level 35 mysqld on
[iyunv@vsftpd ~]# chkconfig --level 35 vsftpd on
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com