Heim  >  Artikel  >  Datenbank  >  RH EL5 VSFTPD 虚拟帐户(MySQL)

RH EL5 VSFTPD 虚拟帐户(MySQL)

WBOY
WBOYOriginal
2016-06-07 16:51:47859Durchsuche

平台:红帽RHEL5 + VSFTPD + MySQL一、安装MySQLmysql-5.1.7-beta-linux-i686-glibc23.tar.gz# tar zxvf mysql-5.1.7-beta-linux

平台:红帽RHEL5 + VSFTPD + MySQL

一、安装MySQL

mysql-5.1.7-beta-linux-i686-glibc23.tar.gz
# tar zxvf mysql-5.1.7-beta-linux-i686-glibc23.tar.gz
# ln -s mysql-5.1.7-beta-linux-i686-glibc23 /usr/local/mysql
# cd /usr/local/mysql
# scripts/mysql_install_db --user=mysql
# chown -R root .
# chown -R mysql data
# chgrp -R mysql .
# bin/mysqld_safe &
# bin/mysql
mysql >

二、安装 pam_mysql.so

pam_mysql-0.7RC1.tar.gz //下载地址:chinaunix
# tar zxvf pam_mysql-0.7RC1.tar.gz
# cd pam_mysql-0.7RC1
# ./configure --with-mysql=/usr/local/mysql
# make clean install
# cp /usr/lib/security/pam_mysql.so /lib/security/

三、安装 vsftpd

通过rpm安装EL5自带的vsftpd rpm 包就可以。

四、建立虚拟用户

# useradd -d /home/vftp -s /bin/nologin vftp -m

五、建立认证

利用mysql建立用户
就是把用户名和密码放在mysql库里,实现起来也相当简单
(1)建立一个库并设置相应权限
# mysql –p
mysql>create database ftpd;
mysql>use ftpd;
mysql>create table user(name char(20) binary,passwd char(20) binary);
mysql>insert into user (name,passwd) values ('mike','123');
mysql>insert into user (name,passwd) values ('tom','123');
mysql>grant select,,insert on ftpd.user to vftp@localhost identified by '123';
mysql>flush privileges; 刷新权限设置
mysql>quit
(2)建立PAM认证信息
# vi /etc/pam.d/vftp ,内容如下
auth required /lib/security/pam_mysql.so user=vftp passwd=123 host=localhost db=ftpd table=user usercolumn=name passwdcolumn=passwd crypt=0
account required /lib/security/pam_mysql.so user=vftp passwd=123 host=localhost db=ftpd table=user usercolumn=name passwdcolumn=passwd crypt=0
注意:
crypt= n
crypt=0: 明文密码
crypt=1: 使用crpyt()函数(对应SQL数据里的encrypt(),encrypt()随机产生salt)
crypt=2: 使用MYSQL中的password()函数加密
crypt=3:表示使用md5的散列方式

六、修改ftp配置文件

vi /etc/vsftpd/vsftpd.conf
pam_service_name=vftp
guest_enable=YES
guest_username=vftp

七、验证

以mike 和 tom的身份登陆ftp

linux

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn