做了两天的实验,还是不成功,
环境是asianux 3.0 sp2 x86_64,系统为最小化安装,
vsftpd版本为 vsftpd-2.2.0,官方下载的,
第一:
首先在编译安装的时候提示的库找不到。
解决办法:我将vsf_findlibs.sh脚本文件中的库文件路径都修改为/lib64/...,之后就可以编译。
第二:
我在配置过程中发现编译安装的怎么的都不支持虚拟用户的功能,然后我找了一个同样环境机器的用rpm安装就可以支持虚拟用户,我看到配置文件中只有一点不同就是:
rpm安装的有个选项打开了tcp_wrappers=YES,
然而编译安装的却没有,就算是打开了之后在启动vsftpd的时候也提示编译的时候没有将tcp_wrappers编译进来,所有我将编译安装的文件都删除之后重新编译,更改了头文件中的builddefs.h中的选项#undef VSF_BUILD_TCPWRAPPERS变为#dfine VSF_BUILD_TCPWRAPPERS,然后再次重新编译,安装.
虽然安装之后支持了tcp_wrappers,但是还是不支持虚拟用户.
我用的配置文件都是在rpm安装测试成功的(这些配置是支持虚拟用户的),直接拷贝过来的,问题不知道出在什么地方?
我的/etc/pam.d/vsftpd文件配置在两种安装方法中也都相同。
以下是我的/etc/vsftpd.conf配置文件内容
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
listen=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
guest_enable=YES
guest_username=ftpvuser
以下是我/etc/pam.d/vsftpd配置内容:
auth required pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required pam_userdb.so db=/etc/vsftpd/vsftpd_login
问题没有解决,待续,可能是这个vsftpd版本在asianux中有bug,我会到其他系统,如redhat或是在这个系统上用其他版本实验的。如果发现了问题一定和大家分享!
现在问题解决了,我在网上找了很多资料,其中有一篇很有力度,按照操作立即解决。连接是。
就是因为我没有安装pam-devel这个包,所以在编译的时候没有正确的编译,个人理解编译之后只是部分功能依赖pam模块,比如在此之前我做过访问控制,那个实验就成功了,当我安装pam-devel包之后再次编译安装,经测试服务器允许虚拟用户登录,并进行操作。所以还是有待学习呀!linux的文件或服务等关联得很
阅读(2865) | 评论(0) | 转发(0) |