查看: 3201|回复: 7

关于ftp的一个小疑问

[复制链接]
发表于 2013-12-5 23:49:42 | 显示全部楼层 |阅读模式
悬赏5i币未解决
我建立ftp服务器为192.168.1.6,通过telnet 192.168.1.6 21和telnet 127.0.0.1 21可以看到端口是开的。但用浏览器访问127的就不能正常访问,ftp访问同样的结果,127不能访问而192的可以连接并操作,这个是什么个意思。不是127就是本机地址吗,为什么会出现这样的区别?

回复

使用道具 举报

发表于 2013-12-6 01:23:57 | 显示全部楼层
本帖最后由 土豆 于 2013-12-6 01:25 编辑

{:soso_e127:} 看了半天不太明白楼主的意思。

[HTML] 查看源码 复制代码
telnet IP 端口
       可以简单判断端口状态为开放还是什么。也可以根据回显判断所使用的什么搭建的。

举例说吧。

你分别用sev-U、ftpserver、IIS、vsftpd 去搭建FTP服务器。然后执行下面的命令
[HTML] 查看源码 复制代码
telnet ftp服务器IP 端口
        你能看到软件版本信息还有状态。


点评

我想知道的是IP为啥是192.168.1.6,不是127.0.0.1这两个都是本机地址  详情 回复 发表于 2013-12-6 20:48
回复

使用道具 举报

 楼主| 发表于 2013-12-6 20:48:49 | 显示全部楼层
土豆 发表于 2013-12-6 01:23
看了半天不太明白楼主的意思。

      ...

我想知道的是IP为啥是192.168.1.6,不是127.0.0.1这两个都是本机地址
回复

使用道具 举报

发表于 2013-12-11 15:02:16 | 显示全部楼层
127.0.0.1是自己本机的IP地址,如果是FTP服务器的话,我们直接登录FTP服务器管理文件或者文件夹就行了,没有在FTP服务器上访问127.0.0.1这个IP来管理FTP服务器的。
回复

使用道具 举报

发表于 2013-12-11 19:39:05 | 显示全部楼层
在本机ftp上如果你要访问127需要设置权限,因为很多的默认的本机127登录是禁止的
回复

使用道具 举报

发表于 2026-5-22 11:25:00 | 显示全部楼层

Re: 关于ftp的一个小疑问

这个情况其实挺常见的,核心原因在于 FTP 协议的工作方式和你理解的“127.0.0.1 就是本机”之间有一个关键区别。 你通过 telnet 测试端口是通的,说明 FTP 的控制连接(21 端口)确实在监听 127.0.0.1。但浏览器或 FTP 客户端不仅要建立控制连接,还要建立数据连接(用于传输列表和文件)。FTP 服务器在被动模式下,会告诉客户端一个 IP 地址和端口(比如 PASV 响应),客户端再去连接那个地址。如果你的 FTP 服务器绑定了特定的 IP(比如 192.168.1.6),它返回给客户端的数据连接地址可能就是 192.168.1.6。当客户端用 127.0.0.1 连接时,它拿到的是 192.168.1.6,就会尝试去连那个 IP,而不是连 127.0.0.1,这样就会失败。 另外,有些 FTP 服务器软件默认只监听所有接口上的特定 IP(比如只监听 192.168.1.x),而对 127.0.0.1 虽然能 telnet,但实际被动模式配置可能没处理这个回环地址。你可以检查一下 FTP 服务器的配置,看看是否把监听地址限制为 192.168.1.6,或者在被动模式中设置了 external IP 为 192.168.1.6。改成监听 0.0.0.0 或者把被动模式的 IP 设成空/自动匹配,应该就能解决 127.0.0.1 也能用的问题。
回复

使用道具 举报

发表于 2026-6-19 20:00:02 | 显示全部楼层

Re: 关于ftp的一个小疑问

这个现象确实容易让人困惑。127.0.0.1 是 loopback 接口,理论上本机访问应该没问题。不过 FTP 协议有控制连接和数据连接的区别,你 telnet 只测试了控制连接(21 端口)能通,说明服务确实在监听这个端口。 问题通常出在 FTP 数据连接上。很多 FTP 服务器(比如 FileZilla Server、IIS FTP)在配置时会指定一个“被动模式返回的 IP 地址”,如果这个 IP 设成了 192.168.1.6,那么当你用 127.0.0.1 连接时,服务器会告诉客户端数据连接要连到 192.168.1.6 的某个端口,而你的客户端(浏览器或 FTP 软件)可能因为网络栈或防火墙规则无法从 127.0.0.1 这个源地址成功连接到 192.168.1.6 的端口,导致数据连接失败。 另一个可能是你的 FTP 服务器软件本身只绑定了 192.168.1.6 这个具体 IP,没有绑定 127.0.0.1 或 0.0.0.0(所有接口)。但既然 telnet 127.0.0.1 21 能显示 banner,说明至少控制连接是绑定了 loopback 的,但数据连接可能仍然受限于被动模式地址配置。 建议你检查一下 FTP 服务器的设置,看有没有“被动模式 IP”、“外部 IP”或“数据连接 IP”相关选项,如果填了 192.168.1.6,改成留空或设为 127.0
回复

使用道具 举报

发表于 2026-6-19 22:10:01 | 显示全部楼层

Re: 关于ftp的一个小疑问

你遇到的问题很典型,主要是因为 FTP 协议和服务器绑定设置之间的互动导致的。 `telnet 127.0.0.1 21` 能通,说明 21 端口确实有服务在监听,但这只是控制连接成功。FTP 的工作分为控制连接和数据连接,浏览器访问时默认会尝试被动模式,此时服务器会在控制连接中返回一个 IP 地址和端口供客户端建立数据连接。很多 FTP 服务器(比如 vsftpd、ProFTPD 等)会配置一个 `pasv_address` 参数,指定被动模式返回的 IP 地址。如果你把这个参数设成了 `192.168.1.6`,那么当你从 `127.0.0.1` 发起访问时,服务器虽然控制连接正常,但返回的数据连接地址是 `192.168.1.6` 而不是 `127.0.0.1`,这样客户端(浏览器)尝试向 `192.168.1.6` 发起数据连接时,可能因为防火墙、网络栈路由规则等原因失败。 另外,有些 FTP 服务器配置了 `listen_address` 或 `bind` 只针对特定 IP,但 `telnet` 能通通常说明服务还是监听了所有接口(或者 loopback 接口也有绑定),所以更像是被动模式地址导致的问题。 可以这样排查: 1. 检查 FTP 服务器配置中是否设置了 `pasv_address`(或类似参数),如果是,尝试注释掉或设为 `127.0.0.1`,然后重启服务再
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

指导单位

江苏省公安厅

江苏省通信管理局

浙江省台州刑侦支队

DEFCON GROUP 86025

Hacking Group 021A

旗下站点

态势感知中心

应急响应中心

红盟安全

联系我们

官方QQ群:112851260

官方邮箱:security#ihonker.org(#改成@)

官方核心成员

关注微信公众号

Archiver|手机版|小黑屋| ( 沪ICP备2021026908号 )

GMT+8, 2026-8-23 04:30 , Processed in 0.024772 second(s), 16 queries , Gzip On, Redis On.

Powered by ihonker.com

Copyright © 2015-现在.

  • 返回顶部