| 关键词: nbsp 状态 服务器 命令 端口 错误 正在 定向 192.168 数据 |
今晚又是一个不眠夜啊 拿下一个服务器 貌似是一个服务器机群的样子,局域网服务器是连接着内网和外网。 现在我想实现这样的功能,就是外部网络访问服务器的某一端口(如2021)时 实际访问的是转向内网的某台机器的21端口。 因此我采用了xinetd中的redirect功能,现在测试发现只在局域网内好使, 当外网的机器访问主机的2021端口时发生以下错误:(客户端用cuteftp) ############################################################## 状态:> 正在获取列表“”... 状态:> 正在连接到 ftp 服务器 202.*.*.*:2021 (ip = 202.*.*.*)... 状态:> Socket 已连接。正在等候欢迎消息... 220 Serv-U FTP Server v4.0 for WinSock ready... 状态:> 已连接。正在验证... 命令:> USER yiq 331 User name okay, need password. 命令:> PASS ***** 230 User logged in, proceed. 状态:> 登录成功。 命令:> PWD 257 "/" is current directory. 状态:> Home directory: / 状态:> 该站点支持 features。 状态:> 该站点支持 SIZE。 状态:> 该站点可以续传中断的下载。 命令:> REST 0 命令:> PASV 227 Entering Passive Mode (192,168,2,118,18,241) 命令:> LIST -L 状态:> 正在连接 ftp 数据 socket 192.168.2.118:4849... 错误:> 无法连接到远程服务器。Socket 错误 = #10060。 错误:> 接收服务器响应时发生超时(60000 毫秒)。 ####################################################### 192.168.2.118是我内部网的一台机器的ip 然而 问题来了 看最后一个步骤 命令:> PASV 227 Entering Passive Mode (192,168,2,118,18,241) 命令:> LIST -L 状态:> 正在连接 ftp 数据 socket 192.168.2.118:4849... 错误:> 无法连接到远程服务器。Socket 错误 = #10060。 错误:> 接收服务器响应时发生超时(60000 毫秒)。 这个原因貌似是因为 ftp服务的特点 对于主动模式和被动模式 对于ftp的 控制传输和数据传送方面的问题 在内部访问是因为本来就通的,而外部可以登陆可以认证而不能传输数据 (信息已经显示成功登陆但是传输根目录的列表时发生超时)所以这个原因 已经很清楚由于ftp在传输的时候需要和客户建立一条数据通道(这里就有被动, 主动的知识在了)而数据通道迟迟不能建立,所以超时了。 用iptable也同样会发生这样的问题。解决的方法则就是根据ftp的这个 特点来培植断口重定向和防火墙的策略。 如:开放外部20,21端口,选定好连接的模式等 【有待考证 很久没研究了】 这是xinetd.conf中关于2021端口重定向的配置: ...... service myftp { disable = no socks_type = stream wait = no user = root flags = REUSE port = 2021 #需要重定向的端口 protocol = tcp bind = 202.*.*.* #linux服务器对外ip redirect = 192.168.2.118 21 #重定向到192.168.2.118的21端口 } ........ 额 听说 iptables也可以啊 PS:这个目的是××其他服务器的同时 可以作为跳板.... |
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|