问:
为什么在 windows 通过资源管理器访问 linux vsftpd 服务器从输入地址到弹出认证界面要等很久(大约 10 多秒),有什么办法可以非常快速的弹出认证界面?
详细描述:
在 linux 上连接 ftp 服务器,输入地址后可以很快的弹出认证界面登录
在 windows 上用资源管理器输入地址大约过了 10 多秒后才弹出认证界面。这个过程很慢。
但是我在 windows 的命令行通过 ftp 命令 open ftp 服务器就可以非常快的返回叫我输入用户名密码。
根据这个现象我下载 win 下的 ftp 客户端也可以非常快速的弹出认证界面。
1
yov123456 2015-11-25 12:49:40 +08:00 1
貌似用 sftp 资源管理器连接前面要加用户名 @ 才连得上……
|
2
onice 2015-11-25 17:05:28 +08:00 1
题主试试清理下浏览器的缓存。尝试 ping 一下客户机到 FTP 服务器,看看网络延迟状况。不排除网络中有嗅探器( FTP 明文传输)。尝试更改下 FTP 的连接方式为被动连接(客户机主动连接服务器)。如果有防火墙,记得关闭防火墙再尝试,有的包过滤防火墙真会影响数据传输性能。
|
3
mathcoder23 OP |
4
yov123456 2015-11-26 17:24:41 +08:00 via iPhone 1
@mathcoder23 感觉跟 vsftpd 有些关系 同样禁止匿名 之前用 pureftp 就可以秒弹窗…
|
5
mathcoder23 OP @yov123456 对,我明明都禁止匿名了,居然还要验证那么久,怎么破?
|
6
yov123456 2015-11-26 19:12:07 +08:00 via iPhone 1
@mathcoder23 我刚刚搜了一下还没试 在设置 anonymous_enable = no 的前提下, 貌似在 userlist 允许 anonymous 就可以解决问题
|
7
onice 2015-11-26 21:47:16 +08:00 1
@mathcoder23 如何使 win 资源管理器不自
动匿名认证一下就弹出登录界面,这个可能没辙。如何使服务器快速的响应登录认证失败,这个问题可能跟 vsftpd 有关,我自己使用 vsftpd 都是秒弹窗的。我知道有个方法可以可以直接把认证信息写入地址,这样直接就可以打开,不需要弹窗认证了。 格式是: ftp://username:password@IP 例如用户名是 admin ,密码是 123456 ,服务器地址是: 192.168.1.2 , 那么直接打开 ftp://admin:[email protected] 就不需要弹窗认证了。 我还是认为不应该是客户机的问题,而是你 ftp 服务器的问题,要不升级下 vsftpd 的版本? |
8
mathcoder23 OP @onice
从 win 资源管理器客户端看: ftp://admin:[email protected] 这种方法确实可行,也非常快此时我才恍然大悟, 第一次:我用的是 ftp://192.168.1.2 ,我抓包发现会先尝试匿名登录,我当时就应该猜测实质上调用的是 ftp://anonymous:[email protected] 这样的命令,这样就说得通为什么要先匿名登录,另一方面 win 资源管理器弹出的登录框提示的是:服务器不允许匿名登录,或者不接受改电子邮箱地址,者言下之意是已经尝试过匿名登录了。 第二次:我用的是 ftp://[email protected](我没有传密码),问题依然在,我抓包发现它先进行了登录的用户名是 admin 密码是空。非常惭愧的是我居然没反应过来,没有去思考过为什么密码是空,其实它还是调用 ftp://admin:@192.168.1.2 ,实在惭愧,自己太粗心了,为什么我不去尝试 ftp://admin:[email protected] 这样的命令,因为我之前在 linux 用这样的命令,正确的用户和密码,但是依然会弹出提示输入密码,所以我就错误性的认为 ftp://admin@[email protected] 是不可用了。 哎,从客户端的解决方案来看,还是我太粗心造成这样,没有分析清楚,我想服务器或许还是因为某些不仔细造成的吧。 vsftpd 服务器: 我用的在 mint vsftpd3.02 和 arch vsftpd3.03 都有这样相同的问题,应该是我某些配置有问题,我正在尝试解决, 非常感谢大家。 @yov123456 @onice |