初学iptables,请问ICMP、MASQUERADE是什么?

sah 2005-01-15 06:30:06
ALLOWED_ICMP="x x x/x x xx xx xx xx xx"
iptables -N icmpfilter
for TYPE in $ALLOWED_ICMP; do
iptables -A icmpfilter -i $EXT_IF -p icmp \
--icmp-type $TYPE -j ACCEPT

# ------------------------------------------------------------------------------- #
iptables -N block
iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A block -m state --state NEW -i ! $EXT_IF -j ACCEPT
iptables -A block -j DROP

# -------------------------------------------------------------------------------- #
iptables -A INPUT -j icmpfilter
iptables -A INPUT -j services
iptables -A INPUT -j block
iptables -A FORWARD -j icmpfilter
iptables -A FORWARD -j block

# --------------------------------------------------------------------------------- #
echo "Masquerading internel network..."
iptables -t nat -A POSTROUTING -o $EXT_IF -j MASQUERADE

请问这几段分别是什么意思?
...全文
163 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
sah 2005-01-15
  • 打赏
  • 举报
回复
哦,是的,$EXT_IF是外网卡的定义,我忘了说明了。
但是我还是不明白什么是“ICMP报文”。

另外,我这里有两条语句想要加进去,但是加在后面的话没有效果。我想知道上面说的几段是否对我定义的规则有影响。我的两条语句是:

iptables -t nat -A PREROUTING -p tcp --dport 4680 \
-j DNAT --to-destination 192.168.10.142:4680

iptables -t nat -A POSTROUTING -p tcp -s 192.168.10.142 --sport 4680 \
-j SNAT --to-source 61.152.135.38
Neo_Liu 2005-01-15
  • 打赏
  • 举报
回复
$EXT_IF好像是一个网卡的定义
iptables -A block -m state --state NEW -i ! $EXT_IF -j ACCEPT
允许新数据包(TCP状态为SYN的包)通过,除了$EXT_IF网络接口
Neo_Liu 2005-01-15
  • 打赏
  • 举报
回复
=========处理ICMP报文=========
1.定义允许通过的ICMP报文类型
2.增加新链
3.将每一个定义的ICMP报文类型加到iptable规则里
=========定义新链==============
1.增加新链
2.在新链加入规则允许TCP包的状态信息为ESTABLISHED,RELATED的通过
3.(对$EXT_IF不太清楚)
4.其余包不允许通过
=========将自自定义链加到netfilter的中========
=========定义伪装========

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧