ftp配置虚拟用户
2017-06-13 14:40
267 查看
一、本地数据文件方式
1. 添加虚拟用户口令文件
[root@CentOS5 /]#vi /etc/vsftpd/vftpuser.txt
添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
bobyuan #用户名
123456 #密码
markwang #用户名
123456 #密码
2. 生成虚拟用户口令认证文件
将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。
首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。
[root@CentOS5 /]#rpm –qa |grep db4-utils
[root@CentOS5 /]#rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm
下面使用db_load命令生成虚拟用户口令认证文件。
[root@CentOS5 /]#db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db
3. 编辑vsftpd的PAM认证文件
在/etc/pam.d目录下,
[root@CentOS5 /]#vi /etc/pam.d/vsftpd
将里面其他的都注释掉,添加下面这两行:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
4. 建立本地映射用户并设置宿主目录权限
所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。
[root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
[root@CentOS5 /]#chmod 700 /home/vftpsite
5. 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
6. 重启vsftpd服务
[root@CentOS5 /]#service vsftpd restart
7. 测试虚拟用户登录FTP
C:\User\Administrator>ftp 192.168.120.240
连接到192.168.120.240。
220 Welcome to BOB FTP server
用户(192.168.120.240(none)):markwang
331 Please specify the password.
密码:
230 Login successful.
二、数据库服务器(MySQL)方式
1. 安装MySQL
我使用的是Tar包安装的MySQL,版本号:mysql-6.0.8-alpha.tar.gz
具体安装方法,请查看我的另一篇文章“部署LAMP+Discuz!7.0”。
2. 建立本地映射用户并设置宿主目录权限
[root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
[root@CentOS5 /]#chmod 700 /home/vftpsite
3. 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
4. 在MySQL中建立用户口令数据库
[root@CentOS5 /]#mysql –u root –p
mysql> create database vftpuser; #建立虚拟用户数据库,库名vftpuser
mysql> use vftpuser; #进入vftpuser数据库
mysql> create table users(name char(16) binary,passwd char(16) binary); #建立虚拟用户口令表,表名users
mysql> insert into users (name,passwd) values ('bobyuan',password('111'));
mysql> insert into users (name,passwd) values ('markwang',password('111'));
#建立两个虚拟用户,bobyuan和markwang
注:在这里我用这种方法添加的虚拟用户密码都是经过MySQL加密的,加密后的密码pam-mysql不能识别(MySQL和pam-mysql兼容性有些问题),因此本次实验使用明文保存密码。
添加明文密码:
方法一:单个添加用户
mysql> insert into users (name,passwd) values ('bobyuan', '111');
mysql> insert into users (name,passwd) values ('markwang',‘111');
方法二:批量添加用户
新建vftpuser.txt文件
[root@CentOS5 /]#vi vftpuser.txt
添加用户名和密码,注意字段数据之间要用Tab键隔开。
bobyuan 111
markwang 111
mysql>use vftpuser;
mysql>load data local infile “/vftpuser.txt”into table users;
mysql>flush privileges;
mysql> grant select on vftpuser.users to vftpuser@localhost identified by '111111'; #授权vftpuser这个账号可以读取vftpuser数据库的user表
5. 验证第4步的设置是否成功
[root@CentOS5 /]#mysql –u vftpuser –p
mysql>show databases;
mysql>use vftpuser;
mysql>show tables;
mysql>select * from users;
mysql>quit
1. 添加虚拟用户口令文件
[root@CentOS5 /]#vi /etc/vsftpd/vftpuser.txt
添加虚拟用户名和密码,一行用户名,一行密码,以此类推。奇数行为用户名,偶数行为密码。
bobyuan #用户名
123456 #密码
markwang #用户名
123456 #密码
2. 生成虚拟用户口令认证文件
将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件。
首先查看系统有没有安装生成口令认证文件所需的软件db4-utils。
[root@CentOS5 /]#rpm –qa |grep db4-utils
[root@CentOS5 /]#rpm –ivh db4-utils-4.3.29-9.fc6.i386.rpm
下面使用db_load命令生成虚拟用户口令认证文件。
[root@CentOS5 /]#db_load –T –t hash –f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db
3. 编辑vsftpd的PAM认证文件
在/etc/pam.d目录下,
[root@CentOS5 /]#vi /etc/pam.d/vsftpd
将里面其他的都注释掉,添加下面这两行:
auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vftpuser
4. 建立本地映射用户并设置宿主目录权限
所有的FTP虚拟用户需要使用一个系统用户,这个系统用户不需要密码。
[root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
[root@CentOS5 /]#chmod 700 /home/vftpsite
5. 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
6. 重启vsftpd服务
[root@CentOS5 /]#service vsftpd restart
7. 测试虚拟用户登录FTP
C:\User\Administrator>ftp 192.168.120.240
连接到192.168.120.240。
220 Welcome to BOB FTP server
用户(192.168.120.240(none)):markwang
331 Please specify the password.
密码:
230 Login successful.
local_root表示使用本地用户登录到ftp时的默认目录 anon_root表示匿名用户登录到ftp时的默认目录
二、数据库服务器(MySQL)方式
1. 安装MySQL
我使用的是Tar包安装的MySQL,版本号:mysql-6.0.8-alpha.tar.gz
具体安装方法,请查看我的另一篇文章“部署LAMP+Discuz!7.0”。
2. 建立本地映射用户并设置宿主目录权限
[root@CentOS5 /]#useradd –d /home/vftpsite –s /sbin/nologin vftpuser
[root@CentOS5 /]#chmod 700 /home/vftpsite
3. 配置vsftpd.conf(设置虚拟用户配置项)
[root@CentOS5 /]#vi /etc/vsftpd/vsftpd.conf
guest_enable=YES #开启虚拟用户
guest_username=vftpuser #FTP虚拟用户对应的系统用户
pam_service_name=vsftpd #PAM认证文件
4. 在MySQL中建立用户口令数据库
[root@CentOS5 /]#mysql –u root –p
mysql> create database vftpuser; #建立虚拟用户数据库,库名vftpuser
mysql> use vftpuser; #进入vftpuser数据库
mysql> create table users(name char(16) binary,passwd char(16) binary); #建立虚拟用户口令表,表名users
mysql> insert into users (name,passwd) values ('bobyuan',password('111'));
mysql> insert into users (name,passwd) values ('markwang',password('111'));
#建立两个虚拟用户,bobyuan和markwang
注:在这里我用这种方法添加的虚拟用户密码都是经过MySQL加密的,加密后的密码pam-mysql不能识别(MySQL和pam-mysql兼容性有些问题),因此本次实验使用明文保存密码。
添加明文密码:
方法一:单个添加用户
mysql> insert into users (name,passwd) values ('bobyuan', '111');
mysql> insert into users (name,passwd) values ('markwang',‘111');
方法二:批量添加用户
新建vftpuser.txt文件
[root@CentOS5 /]#vi vftpuser.txt
添加用户名和密码,注意字段数据之间要用Tab键隔开。
bobyuan 111
markwang 111
mysql>use vftpuser;
mysql>load data local infile “/vftpuser.txt”into table users;
mysql>flush privileges;
mysql> grant select on vftpuser.users to vftpuser@localhost identified by '111111'; #授权vftpuser这个账号可以读取vftpuser数据库的user表
5. 验证第4步的设置是否成功
[root@CentOS5 /]#mysql –u vftpuser –p
mysql>show databases;
mysql>use vftpuser;
mysql>show tables;
mysql>select * from users;
mysql>quit
相关文章推荐
- FTP服务器的安装,配置,虚拟用户的创建
- [FTP服务]vsftpd 安装与虚拟用户配置
- [Linux]FTP/VSFTP/配置文件/本地匿名虚拟用户访问/ftp客户端使用
- RHEL4-FTP服务(五)配置虚拟用户访问vsftp服务_(上)
- ftp配置之虚拟用户
- FTP服务器的安装、配置、虚拟用户的创建
- vsftpd安装以及配置FTP虚拟用户实践
- 配置FTP服务器虚拟用户
- FTP服务的配置与虚拟用户的使用
- vsftpd虚拟用户配置【虚拟用户映射到系统账号vuser{禁止该账户登录}登录ftp】
- Linux下vsftpd安装以及配置FTP虚拟用户实践
- vsftp配置ftp服务--虚拟用户登录
- CentOs下ftp虚拟用户的添加和配置
- CentOS 6.8 ftp服务安装配置 基于本地用户和虚拟用户
- 生产环境搭建ftp并配置虚拟用户
- FTP虚拟用户及ssl加密配置
- 配置FTP虚拟用户访问
- ftp虚拟用户的配置
- vsftpd安装以及配置FTP虚拟用户实践
- Vsftpd虚拟用户配置(Linux FTP)