首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将流量转发到iptables中的自定义密钥链

将流量转发到iptables中的自定义密钥链
EN

Stack Overflow用户
提问于 2018-05-29 03:44:07
回答 1查看 1.1K关注 0票数 -1

我需要有关iptables的帮助。当我使用命令iptables -L时,我有以下iptables规则

代码语言:javascript
复制
Chain INPUT (policy DROP)

target     prot opt source               destination         
ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
ACCEPT     icmp --  anywhere             anywhere            
ACCEPT     all  --  anywhere             anywhere            
ACCEPT     tcp  --  anywhere             anywhere             state NEW tcp dpt:ssh

Chain FORWARD (policy DROP)

target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)

target     prot opt source               destination         

Chain MYSSH (0 references)

target     prot opt source               destination

现在,我想向过滤表的ssh链添加一个规则,该规则将把所有INPUT流量发送到MYSSH链。我必须确保这个新规则遵循(而不是先于) RELATED,ESTABLISHED规则,所以它不适用于现有的连接!

我试过了:

代码语言:javascript
复制
iptables -I INPUT 1 -p tcp -m MYSSH --dport 22 -j ACCEPT

但这是行不通的。你能告诉我怎么做吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-05-29 07:07:18

对于超级用户来说,这是一个问题,但好吧。我今天戴上了管理员的帽子。:P

主要的事情是你可以使用你的链作为目标,比如ACCEPTREJECT或者DROP,所以你想把它作为-j选项来传递。

代码语言:javascript
复制
iptables -A INPUT -p tcp --dport 22 -j MYSSH

将附加一条规则,通过到INPUT链的MYSSH链将所有TCP流量通过管道传送到端口22。

另一个问题是在何处插入此规则。一般来说,当我手动做这类事情时(这些天我通常使用海岸墙,因为它更容易维护),我只是使用iptables -A命令并以正确的顺序运行它们。在您的示例中,您似乎希望将其作为第二条或第三条规则插入到catchall之前

代码语言:javascript
复制
ACCEPT     all  --  anywhere             anywhere 

规则(虽然这可能有一些附加的所有条件,如果没有-viptables -L将不会显示;我不知道)。然后我们就会看到

代码语言:javascript
复制
iptables -I INPUT 2 -p tcp --dport 22 -j MYSSH

代码语言:javascript
复制
iptables -I INPUT 3 -p tcp --dport 22 -j MYSSH

这取决于你想要它的位置。

请注意,顺便说一句,如果这个通用规则没有我看不到的附加条件,那么它下面的规则将永远不会达到。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50572660

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档