免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2097 | 回复: 9
打印 上一主题 下一主题

还是 IPFW + NATD + active ftp 的问题 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2005-11-30 16:18 |只看该作者 |倒序浏览
natd.conf:
  interface                vr0
   log_denied            yes
   dynamic                 yes
   unregistered_only yes
   use_sockets          yes
   same_ports           yes
   punch_fw 600:100

ipfw.conf:
  add 100 divert natd all from any to any in via xl0
  add 200 check-state
  add 300 skipto 800 tcp from any to any 21 out via xl0 setup keep-state
  add 700 deny all from any to any in via xl0
  add 701 deny all from any to any out via xl0
  add 800 divert natd all from any to any out via xl0
  add 801 allow all from any to any

然后,当我在 LAN 内向外网 FTP 服务器发起连接时,可以清楚的看到(ipfw list):
00621 allow tcp from 192.168.0.149 11598 to 61.152.242.18 20
00621 allow tcp from 61.152.242.18 20 to 192.168.0.149 11598
被动态增加了两条记录,而且有数据包通过!
但是,客户端的 ftp 还是不能下载数据!?
PORT Command successful.  
LIST  
150 Opening ASCII mode data connection for /bin/ls.  
426 Data connection closed, transfer aborted.  
Error loading directory...

请问这个是怎么回事情???

论坛徽章:
0
2 [报告]
发表于 2005-11-30 16:20 |只看该作者
原帖由 rardge 于 2005-11-30 16:18 发表
natd.conf:
  interface                vr0


对不起,这个是我在这里发帖的时候打错字了,是 xl0。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
3 [报告]
发表于 2005-11-30 16:21 |只看该作者
先学学TCP/IP再说。已经教过一回了。

论坛徽章:
0
4 [报告]
发表于 2005-11-30 16:23 |只看该作者
不是这个问题,你的方法我也用过了,现在也不通了。

论坛徽章:
0
5 [报告]
发表于 2005-11-30 16:49 |只看该作者
我不是不学tcp协议,这个东西也不是几天能学下来的吧。
主要是以前我没有用过 NATD(用 ADSL 的时候,ppp 自动完成了这个步骤),我以前的规则现在都无效,后来搞了半天并对比了 rc.firewall 的 open 段才知道要用 natd!
然后又在 natd 和 check-state 这里卡住,再看手册又学到要用 skipto。
现在就是这个ftp不通,我看了很多帖子(俄文和英文的才找到类似的帖子,中文的帖子都是翻录王波的书籍,真是好的没话讲),用上了上面我的那些指令,现在还是卡住,真不知道怎么办了。
我就是不想用 allow tcp from any 20 to any 这样,觉得还是我贴出来的方式比较放心点。
你可以说我神经、自找麻烦等等等等,但是既然它有这个用法,我就是想搞懂怎么用。
你一句话把我踢到TCP/IP那里去了,说实话,我还真有《TCP/IP 协议详解 卷一》,但是我功力太差,看的似懂非懂的。那我现在能否请你指教我一下,我上面的方案到底哪里用错了?真的谢谢了!

论坛徽章:
0
6 [报告]
发表于 2005-11-30 19:18 |只看该作者
知道了
100 divert natd all from any to any in via xl0
  200 check-state
  300 skipto 800 tcp from any to any 21 out via xl0 setup keep-state
  621 allow tcp from 192.168.0.149 11598 to 61.152.242.18 20  <---- 这个包出不去!
  621 allow tcp from 61.152.242.18 20 to 192.168.0.149 11598
  700 deny all from any to any in via xl0
  701 deny all from any to any out via xl0
  800 divert natd all from any to any out via xl0
  801 allow all from any to any
唉,NATD 自己动态增加的规则我无法让它skipto,继续研究。

论坛徽章:
0
7 [报告]
发表于 2005-11-30 19:58 |只看该作者
唉,版主,我歇菜了,呵呵。
暂时还是用
ipfw add 400 skipto 800 tcp from any to any 21 out via xl0 setup keep-state
ipfw add 401 skipto 800 tcp from any 20 to any in via xl0 setup keep-state
来搞定吧。
真奇怪,natd 的这个在防火墙上开个洞的做法不能应用于带状态的规则?希望将来它行,亦或者我还没找到方法。
结束,不再对此问题发帖了。

论坛徽章:
0
8 [报告]
发表于 2013-08-15 17:15 |只看该作者
回复 3# FinalBSD


$cmd 120 $skip tcp from any to any 21 out xmit $pif setup keep-state
$cmd 130 $skip tcp from any 20 to any in recv  $pif setup keep-state

论坛徽章:
0
9 [报告]
发表于 2013-08-15 17:54 |只看该作者
参考 《CNFUG期刊》第十二期里面的  4.4.1内网Client访问外网Ftp Server  和 4.4.2外网Client访问内网Ftp Server
http://fanqiang.chinaunix.net/adm/net/2005-03-30/3069.shtml

论坛徽章:
54
2017金鸡报晓
日期:2017-02-08 10:39:42操作系统版块每日发帖之星
日期:2016-03-08 06:20:00操作系统版块每日发帖之星
日期:2016-03-07 06:20:00操作系统版块每日发帖之星
日期:2016-02-22 06:20:00操作系统版块每日发帖之星
日期:2016-01-29 06:20:00操作系统版块每日发帖之星
日期:2016-01-27 06:20:00操作系统版块每日发帖之星
日期:2016-01-20 06:20:00操作系统版块每日发帖之星
日期:2016-01-06 06:20:0015-16赛季CBA联赛之江苏
日期:2015-12-21 20:00:24操作系统版块每日发帖之星
日期:2015-12-21 06:20:00IT运维版块每日发帖之星
日期:2015-11-17 06:20:002015亚冠之广州恒大
日期:2015-11-12 10:58:02
10 [报告]
发表于 2013-08-15 20:10 |只看该作者
不开放20,ftp能通就出大错了!不是你想用不想用的问题,是必须用。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP