centos5.6 (64bit)编译安装vsftpd-2.3.4的配置(两种用户登录)[连载之电子商务系统架构]

centos5.6 (64bit)编译安装vsftpd-2.3.4的配置(两种用户登录)
出处: http://jimmyli.blog.51cto.com/  我站在巨人肩膀上Jimmy Li
作者:Jimmy Li
关键词:电子商务,系统架构,vsftpd,本地用户登录,虚拟用户登录
------[连载之电子商务系统架构]访问量超过100万的电子商务网站技术架构

上一篇中首先分享一份:访问量超过100万的电子商务网站技术架构.PNG图,架构中的服务器,都必须远程传输文件,最佳方案当然是用FTP了。那么服务器搭建FTP当然是首要的任务了。虚拟用户登录比本地用户登录安全系数高。因为vsftpd虚拟用户,并不是系统的账号,也就仅用来支持Vsftpd服务用,因此没有许可他登陆系统的必要,比直接设定本地用户登录账号为登陆系统的用户安全性高。

一、文章要点:
1.64位系统下使用了PAM数据方式的虚拟用户配置
2.修改关键脚本,是编译成功通过。必要步骤,详细安装配置说明过程。
3.完全配置实例,Centos5.6编译安装vsftpd-2.3.4(配置本地用户登录、虚拟用户登录)

下载
wget  http://xiazai.xiazaiba.com/Soft/V/vsftpd-2.3.4.tar.gz
tar xzvf vsftpd-2.3.4.tar.gz 
cd vsftpd-2.3.4
关键步骤:由于64位系统的SO文件路径有变化,必须更改vsf_findlibs.sh脚本的将lib换成lib64
可以手工修改,也可以执行批量修改。
sed -i 's/lib\//lib64\//g' vsf_findlibs.sh    这里不执行,在64位系统是无法make成功的
mkdir /var/ftp/
useradd -d /var/ftp ftp
chown root.root /var/ftp/
chmod og-w /var/ftp/
make
make install
cd /etc/
cp /etc/vsftpd/vsftpd.conf.rpmsave vsftpd.conf

二、详细安装配置说明过程:
1、首先是安装PAM
yum install pam-devel db4-utils
2、安装vsftpd
yum install vsftpd* 
3、查看vsftpd是否加载 pam
ldd /usr/sbin/vsftpd
若输出中出现ibpam.so.0 => /lib/libpam.so.0,表示加载成功
4、生成用户验证数据库文件
1)创建loguser.txt,格式如下(用户、密码、用户、密码.....)
userid 
pass
2)保存后,使用db_load -T -t hash -f loguser.txt /etc/vsftpd/vsftpd_login.db,查看该目录下文件是否生成
     设置访问权限 chmod 600 /etc/vsftpd_login.db
5、vim /etc/pam.d/vsftpd
     在头部添加如下行
     auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 
     account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    注意,若为64位操作系统,此处的路径应该修改为
     auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login 
     account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
    否则,启动vsftpd后,会报530错误,这个错误我也是找了好久才明白的,之前其他网站上同类说明文件,均没有说明此问题
    将其它的内容注释掉
6、vim /etc/vsftpd/vsftpd.conf,确保含有一下设置:
        anonymous_enable=NO 
        local_enable=YES 
        write_enable=NO 
        anon_upload_enable=NO 
        anon_mkdir_write_enable=NO 
        anon_other_write_enable=NO 
        chroot_local_user=YES 
        guest_enable=YES 
        guest_username=virtual //---这里为映射的本地用户 
        listen=YES 
        listen_port=21 
        pasv_min_port=30000 
        pasv_max_port=30999
7、启动vsftpd
三、完全配置实例
Centos5.6编译安装vsftpd-2.3.4(配置本地用户登录)
tar zxvf vsftpd-2.3.4.tar.gz
cd vsftpd-2.3.4
mkdir -p /usr/local/man/man8
mkdir -p /usr/local/man/man5
make && make install
cd ../
vim /etc/vsftpd.conf
mkdir /etc/vsftpd
touch /etc/vsftpd/chroot_list
echo "/usr/local/sbin/vsftpd &" >> /etc/rc.local
mkdir /var/ftp
touch /etc/vsftpd/userlist.chroot
touch /etc/vsftpd/userlist_deny.chroot
touch /var/log/vsftpd.log
mkdir -p /usr/share/empty
#防火墙 selinux设置
/usr/local/sbin/vsftpd &
setsebool -P ftpd_disable_trans on
/sbin/iptables -I INPUT -p tcp --dport 21 -j ACCEPT
/etc/rc.d/init.d/iptables save
/etc/init.d/iptables restart
useradd -d /home/wwwroot -s /sbin/nologin adminftp
pkill vsftpd
/usr/local/sbin/vsftpd &
最后记得设置adminftp密码
命令:passwd adminftp然后输入两次新密码

请关注连载续篇,欢迎朋友一起交流,讨论。扣扣:柒⑥柒陆叁⑤叁伍。




     本文转自jimmy_lixw 51CTO博客,原文链接:http://blog.51cto.com/jimmyli/683599 ,如需转载请自行联系原作者


优秀的个人博客,低调大师

微信关注我们

原文链接:https://yq.aliyun.com/articles/475246

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
优质分享Android(本站安卓app)

优质分享Android(本站安卓app)

近一个月的开发和优化,本站点的第一个app全新上线。该app采用极致压缩,本体才4.36MB。系统里面做了大量数据访问、缓存优化。方便用户在手机上查看文章。后续会推出HarmonyOS的适配版本。

Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Java Development Kit(Java开发工具)

Java Development Kit(Java开发工具)

JDK是 Java 语言的软件开发工具包,主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。