• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

vsftpd on RHL 9.0 虚拟用户设置(修正官方文档部分错误)

发布: 2007-7-04 12:06 | 作者: admin | 来源:  网友评论 | 查看: 21次 | 进入软件测试论坛讨论

领测软件测试网
#约定: 所有在"[ ]"里的都是应该直接在运行的命令,所有的目录因素已经完整
#说名: 此文档翻译和整理自源代码包内的example文档, 本人首次发布于linuxsir.com


准备:
1) 确认已经安装vsftpd
[rpm -q vsftpd]

2) 确认安装Berkeley db
[rpm -q db4 ]

开始:

1) 生成虚拟用户的数据库:
使用pam_userdb 来认证虚拟用户.
先生成一个logins.txt:
[vi /root/logins.txt ]

tom
foo
fred
bar

[db_load -T -t hash -f /root/logins.txt /etc/vsftpd/vsftpd_login.db]
[chmod 600 /etc/vsftpd/vsftpd_login.db]

#更多关于DB 的资料,看下面:

http://www.sleepycat.com/docs/utility/index.html


2) 生成一个使用你的新的db的PAM 文件.
[vi /etc/pam.d/vsfptd]
修改成如下:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login
account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

[cp /etc/pam.d/vsftpd /etc/pam.d/ftp]




3) 建立虚拟用户的目录.

[useradd -d /home/ftpsite virtual ]
[ls -ld /home/ftpsite ]
(看起来应该是这样的):
drwx------ 3 virtual virtual 4096 Jul 30 00:39 /home/ftpsite

拷贝一个文件来做测试用:

[cp /etc/hosts /home/ftpsite]
[chown virtual.virtual /home/ftpsite/hosts]

4) 建立你自己的 /etc/vsftpd/vsftpd.conf 文件



anonymous_enable=NO
local_enable=YES

#这禁止了匿名用户使用FTP 服务,并且允许非匿名用户的登录,就是虚拟用户所需要的权限

write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
anon_other_write_enable=NO

#出于安全的目的,禁止写权限

chroot_local_user=YES

#这明确了虚拟用户是被定向到了虚拟的FTP 空间:/home/ftpsite


guest_enable=YES
guest_username=virtual

# guest_enable 是很重要的- 它激活了虚拟用户的选项! 而guest_username 说明所有的虚拟用户被看做是实际的用户"virtual" . 这也帮助确定用户的目录.

listen=YES
listen_port=10021

# 使 vsftpd 以"standalone" 模式运行- 端口10021

pasv_min_port=30000
pasv_max_port=30999

#限定端口,方便防火墙的设置

5) 运行 vsftpd.
[vsftpd /etc/vsftpd/vsftpd.conf &]

#这样做是指定配置文件,同时可以避免出500错误

6)确认已经运行:
[ps aux|grep vsftpd]



7)测试.


ftp localhost 10021
Connected to localhost (127.0.0.1).
220 ready, dude (vsFTPd 1.1.0: beat me, break me)
Name (localhost:chris): tom
331 Please specify the password.
Password:
230 Login successful. Have fun.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> pwd
257 "/"
ftp> ls
227 Entering Passive Mode (127,0,0,1,117,135)
150 Here comes the directory listing.
226 Transfer done (but failed to open directory). # 仅仅因为目录并非可列表的,忽略
ftp> size hosts # 查看文件名为"hosts"的文件的大小
213 147
ftp> get hosts # 下载文件名为"hosts"的文件

# 如果有错误请反馈!

 sakulagi 回复于:2003-06-24 10:17:47
vivian,欢迎你回来。给大家带来好帖子

 lnx3000 回复于:2003-06-24 10:27:34
这个帖子很有用啊,感谢楼主

 dawei 回复于:2003-06-24 10:37:14
好帖子,up

 pduan1209 回复于:2003-07-05 10:25:50
我按你的设置可提示如下:
 connected to 192.168.0.3
 500 oops:could not bind listening socket
 connection closed by remote host.
请问是那里出了问题,还有你那个虚似用户要先建立吗?

 sqh 回复于:2003-07-10 22:26:28
[quote:f0820aa5b8="pduan1209"]我按你的设置可提示如下:
 connected to 192.168.0.3
 500 oops:could not bind listening socket
 connection closed by remote host.
请问是那里出了问题,还有你那个虚似用户要先建立吗?[/quote:f0820aa5b8]     

我没有任何虚拟用户,可是也出现下面错误:
[~]$ vsftpd
500 OOPS: could not bind listening IPv4 socket
请问这是如何?

 qxinfo 回复于:2003-07-25 14:37:13
ftp localhost  是可以連上的

可是用別的機器連接時就出錯了.
C:\>ftp 192.168.1.25
> ftp: connect :對方重設連線

這是為什麼?????

 zwh23 回复于:2003-07-28 12:09:18
为什么我不行?我是按照帖子作的亚

 kinki_china 回复于:2003-07-30 13:02:02
我也多次碰到类似的问题,但是后来发现可能是你在/etc/x.netd.d/中仍然有ftp的文件,导致混乱所至

 a791223 回复于:2003-10-02 19:35:28
我也是出现上面500错误,查看了xinetd.d目录没有有关ftp的文件呀,另外我想问一下如何设置上传空间的大小。
 我的错误如下:
500 oops; could notbind listening socket

 austinlinux 回复于:2003-11-06 01:06:58
我是全部按他的做的,就是登不上,总是提示密码错误。

 daveix 回复于:2004-05-24 22:12:55
:!: 不行啊,完全照着你的步骤,最后输入密码后,反馈的结果是密码不正确.能不能请作者告之为什么啊
我的是RH9

 daveix 回复于:2004-05-24 22:33:57
:?: 现在登录没有问题了,但是虚拟帐号无法显示目录,告的错误是"226 Transfer done (but failed to open directory)."
请问是什么原因???

 feifacz 回复于:2005-07-29 20:05:44
可以这样使用虚拟用户了,能不能用MYSQL数据库来管理用户名和密码,而不使用文本的数据

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网