请注意:该动画内所含广告与本站无任何关系,为作者个人宣传,网络交易风险自负
######################安装部分#####################
# useradd nobody #一般系统都已经建立好了
# mkdir /usr/share/empty/
# mkdir /var/ftp/
# useradd -d /var/ftp ftp
# chown root:root /var/ftp #如何是OpenBSD则为root:wheel
# chmod og-w /var/ftp
# tar -zxvf vsftpd-2.2.1.tar.gz
# cd vsftpd-2.2.1
# make
# make install
# cp vsftpd.conf /etc/
# cp RedHat/vsftpd.pam /etc/pam.d/ftp
# cp /etc/vsftpd.conf /etc/vsftpd.conf.bak #做个备份
######################配制部分######################
1.以匿名方式:
# vi /etc/vsftpd.conf
anonymous_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
ftpd_banner=Welcome to blah FTP service. #欢迎提示(自定义)
listen=YES
:x #结束配制
2.本地用户方式:
local_enable=YES
write_enable=YES
local_umask=022
chroot_list_enable=YES #这个一定要开启,为了安全考虑
chroot_list_file=/etc/vsftpd.chroot_list
# vi /etc/vsftpd.chroot_list #加入用户即可(一行一用户)
tom
...
:x #结束配制
如果要限制一些本地用户登陆,则执行
# vi /etc/ftpusers #输入用户(一行一用户)
3.以虚拟用户方式(两种):
一:以db4数据库来存放用户及密码
# rpm -qa |grep db4 #查看是否已经安装,如果没有挂载光驱安装即可
# vi /var/vusers.txt #单行为用户,双行为密码
admin #虚拟用户名
admin888 #密码
....
# db_load -T -t hash -f /var/vuserss.txt /etc/vsftpd_login.db #建立数据库文件
# chmod 600 /etc/vsftpd_login.db
#vi /etc/pam.d/ftp #建立认证文件
auth required /lib/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd_login
:x
#useradd vuser #建立主虚拟用户(其它虚拟用户需要通过此用户来登陆)
#vi /etc/vsftpd.conf
guest_enable=YES
guest_username=vuser
:x
二:以mysql数据库来存放用户及密码
mysql> create database vftp; #创建数据库用以存放用户及密码
mysql> use vftp; #选择当前数据库
mysql> create table vuser(name char(20) binary,pwd char(20) binary);
mysql> insert into vuser values(admin,admin888); #导入一条用户
mysql> grant select on vftp.vuser to vftp@localhost identified by admin888;
mysql> select * from vuser; #确认是否添加成功
# tar -zxvf pam_mysql-0.5.tar.gz #模块
# cd pam_mysql
# vi Makefile #不修改会编译出错
-Wshadow -pedantic -fPIC -I/usr/local/mysql/include #默认路径
-Wshadow -pedantic -fPIC -I/www/mysql/include #我安装的路径
export LD_D=gcc -shared -Xlinker -x -L/usr/local/mysql/lib/mysql -lz #默认路径
export LD_D=gcc -shared -Xlinker -x -L/www/mysql/lib/mysql -lz #我安装的路径
:x
# make
# cp pam_mysql.so /lib/security/
# vi /etc/pam.d/ftp
auth required /lib/security/pam_mysql.so user=vftp passwd=admin888 host=localhos
t db=vftp table=vuser usercolumn=name passwdcolumn=pwd crypt=0
account required /lib/security/pam_mysql.so user=vftp passwd=admin888 host=local
host db=vftp table=vuser usercolumn=name passwdcolumn=pwd crypt=0
:x
# vi /etc/vsftpd.conf
guest_enable=YES
guest_username=vuser
:x
# ln -s /usr/local/mysql/lib/mysql/libmysqlclient.so.15 /usr/lib #默认路径
# ln -s /tools/mysql-5.0.86/libmysql/.libs/libmysqlclient.so.15 /usr/lib #我的路径
######################测试部分###################
# /usr/local/sbin/vsftpd & #开启vsftpd服务
# ftp localhost