首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IPtables配置

IPtables配置
EN

Ask Ubuntu用户
提问于 2019-04-24 06:26:16
回答 1查看 448关注 0票数 -1

首先,我很抱歉我的英语,而不是我的第一语言。

我在想关于IPtables的事。我读了很多关于它的文章和帖子,并认为我至少对它有一点了解。

我花了好几个小时尝试各种规则的组合..。你觉得呢?这是一个很好的外形,“安全”吗?

提前谢谢!

代码语言:javascript
复制
  #!/bin/bash
  #iptables-restore < /etc/iptables.test.rules

  iptables -F
  iptables -X
  iptables -t nat -F
  iptables -t nat -X
  iptables -t mangle -F
  iptables -t mangle -X
  iptables -P INPUT DROP
  iptables -P FORWARD DROP
  iptables -P OUTPUT DROP 


  # Autorise les connexions déjà établies et localhost              
  iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT      
  iptables -A OUTPUT -m state --state ESTABLISHED -j ACCEPT     
  iptables -A INPUT -i lo -j ACCEPT                             
  #iptables -A OUTPUT -o lo -j ACCEPT

 TOR
  iptables -A OUTPUT -p tcp -m tcp --dport 9050 -j ACCEPT

  # ICMP (Ping)                                     
  iptables -A INPUT -p icmp -j DROP                     
  iptables -A OUTPUT -p icmp -j DROP

  # DNS                                         
  iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT                    
  iptables -A OUTPUT -p udp --dport 53 -j ACCEPT                    

  # HTTP                                            
  iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT                

  #HTTPS
  iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT                   



  # Mail SMTP 
  iptables -A OUTPUT -p tcp --dport 25 -j ACCEPT  

#Transmission
iptables -A INPUT -p udp --dport 51413 -j   
ACCEPT
iptables -A OUTPUT -p udp --sport 51413 -j ACCEPT


  # NTP (horloge du serveur) 
  iptables -A OUTPUT -p udp --dport 123 -j ACCEPT   

  # On log les paquets en entrée.
  iptables -A INPUT -j LOG

# On log les paquets en sortie.
iptables -A OUTPUT -j LOG

  # On log les paquets forward.
  iptables -A FORWARD -j LOG                

  exit 0
EN

回答 1

Ask Ubuntu用户

发布于 2019-04-25 07:31:53

首先,我想提到的是,在本地计算机上配置防火墙并不是必须的。如果您没有直接连接到公共互联网(请不要这样做),您的家庭路由器/防火墙提供了一个基本的安全水平。我不是说你想做的事是完全没有意义的。我只是说,如果你不完全明白你在做什么,就不要走得太远。

那么对于IPtable规则。我的建议是从小开始,一步一步地增加规则。例如,从以下方面开始:

代码语言:javascript
复制
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP 

# DNS                                         
iptables -A OUTPUT -p tcp --dport 53 -j ACCEPT                    
iptables -A OUTPUT -p udp --dport 53 -j ACCEPT

# HTTP                                            
iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT                

#HTTPS
iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT 

#Allow servers to respond to the packets that are send by this device
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

通过浏览到google.com来测试规则。如果这有效,则逐步添加其余的规则。这比在一堆规则上反复尝试容易得多。

我不明白你所用的所有规则。其中有些看起来很奇怪。基于tcp标志的规则是高级别的。为此,您需要知道tcp/udp是如何工作的。所以暂时别管他们,把注意力集中在其他人身上。

另外,当您使用默认的DROP策略时,不需要像SSH那样添加额外的拖放规则。你使用的规则越少,就越容易理解。

一个额外的建议,这可能是有用的Wireshark您的流量,以便您看到发生了什么。请注意,取决于Wireshark正在寻找的位置,它将影响您将看到的流量。我只是不能确切地告诉你Wireshark会在哪里捕捉交通。也许其他人可以?

我希望这会有进一步的帮助。否则就随便问吧。

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

https://askubuntu.com/questions/1137597

复制
相关文章

相似问题

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