@@ -12,11 +12,19 @@ Linux上常用的防火墙软件
1212- [ 补充说明] ( #补充说明 )
1313 - [ 语法] ( #语法 )
1414 - [ 选项] ( #选项 )
15+ - [ 基本参数] ( #基本参数 )
1516 - [ 命令选项输入顺序] ( #命令选项输入顺序 )
1617 - [ 工作机制] ( #工作机制 )
1718 - [ 防火墙的策略] ( #防火墙的策略 )
1819 - [ 防火墙的策略] ( #防火墙的策略-1 )
1920 - [ 实例] ( #实例 )
21+ - [ 空当前的所有规则和计数] ( #空当前的所有规则和计数 )
22+ - [ 配置允许ssh端口连接] ( #配置允许ssh端口连接 )
23+ - [ 允许本地回环地址可以正常使用] ( #允许本地回环地址可以正常使用 )
24+ - [ 设置默认的规则] ( #设置默认的规则 )
25+ - [ 配置白名单] ( #配置白名单 )
26+ - [ 开启相应的服务端口] ( #开启相应的服务端口 )
27+ - [ 保存规则到配置文件中] ( #保存规则到配置文件中 )
2028 - [ 列出已设置的规则] ( #列出已设置的规则 )
2129 - [ 清除已有规则] ( #清除已有规则 )
2230 - [ 删除已添加的规则] ( #删除已添加的规则 )
@@ -186,6 +194,61 @@ iptables还支持自己定义链。但是自己定义的链,必须是跟某种
186194
187195### 实例
188196
197+ #### 空当前的所有规则和计数
198+
199+ ``` bash
200+ iptables -F # 清空所有的防火墙规则
201+ iptables -X # 删除用户自定义的空链
202+ iptables -Z # 清空计数
203+ ```
204+
205+ #### 配置允许ssh端口连接
206+
207+ ``` bash
208+ iptables -A INPUT -s 192.168.1.0/24 -p tcp --dport 22 -j ACCEPT
209+ # 22为你的ssh端口, -s 192.168.1.0/24表示允许这个网段的机器来连接,其它网段的ip地址是登陆不了你的机器的。 -j ACCEPT表示接受这样的请求
210+ ```
211+
212+ #### 允许本地回环地址可以正常使用
213+
214+ ``` bash
215+ iptables -A INPUT -i lo -j ACCEPT
216+ # 本地圆环地址就是那个127.0.0.1,是本机上使用的,它进与出都设置为允许
217+ iptables -A OUTPUT -o lo -j ACCEPT
218+ ```
219+
220+ #### 设置默认的规则
221+
222+ ``` bash
223+ iptables -P INPUT DROP # 配置默认的不让进
224+ iptables -P FORWARD DROP # 默认的不允许转发
225+ iptables -P OUTPUT ACCEPT # 默认的可以出去
226+ ```
227+
228+ #### 配置白名单
229+
230+ ``` bash
231+ iptables -A INPUT -p all -s 192.168.1.0/24 -j ACCEPT # 允许机房内网机器可以访问
232+ iptables -A INPUT -p all -s 192.168.140.0/24 -j ACCEPT # 允许机房内网机器可以访问
233+ iptables -A INPUT -p tcp -s 183.121.3.7 --dport 3380 -j ACCEPT # 允许183.121.3.7访问本机的3380端口
234+ ```
235+
236+ #### 开启相应的服务端口
237+
238+ ``` bash
239+ iptables -A INPUT -p tcp --dport 80 -j ACCEPT # 开启80端口,因为web对外都是这个端口
240+ iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT # 允许被ping
241+ iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT # 已经建立的连接得让它进来
242+ ```
243+
244+ #### 保存规则到配置文件中
245+
246+ ``` bash
247+ cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak # 任何改动之前先备份,请保持这一优秀的习惯
248+ iptables-save > /etc/sysconfig/iptables
249+ cat /etc/sysconfig/iptables
250+ ```
251+
189252#### 列出已设置的规则
190253
191254> iptables -L [ -t 表名] [ 链名]
0 commit comments