iptables 详细使用

Posted fanweisheng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iptables 详细使用相关的知识,希望对你有一定的参考价值。

检查状态

先检查是否安装了iptables

$ service iptables status

安装iptables

$ yum install iptables

升级iptables

$ yum update iptables

安装iptables-services

$ yum install iptables-services

编辑配置

$ vi /etc/sysconfig/iptables-config

添加配置

  • 示例:开放RabbitMQ 的 对外端口
iptables -I INPUT -p tcp --dport 5672 -j ACCEPT
iptables -I INPUT -p tcp --dport 15672 -j ACCEPT

保存配置

$ service iptables save

更多操作请往下阅读

重启服务

systemctl restart iptables.service

更多详细配置规则

编辑配置

$ vi /etc/sysconfig/iptables-config

规则操作

查看iptables现有规则

iptables -L -n

允许所有

iptables -P INPUT ACCEPT

允许IO访问

允许来自于lo接口的数据包(本地访问)

iptables -A INPUT -i lo -j ACCEPT

开放443端口(TCP)

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

开放443端口(FTP)

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

开放80端口(HTTP)

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

开放443端口(HTTPS)

iptables -A INPUT -p tcp --dport 443 -j ACCEPT

允许ping

iptables -INPUT -p icmp --icmp-type 8 -j ACCEPT

允许响应

允许接受本机请求之后的返回数据 RELATED,是为FTP设置的

iptables -A INPUT -state --state RELATED,ESTABLISHED -j ACCEPT

入站一律丢弃

iptables -P INPUT DROP

出站全部允许

iptables -P OUTPUT ACCEPT

转发一律丢弃

iptables -P FORWARD DROP

更多常用命令操作

清除规则

  • 清除已有iptables规则
iptables -F #清空所有默认规则
iptables -X #清空所有自定义规则
iptables -Z #所有计数器归0

保存配置

$ service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]

开启服务

$ systemctl start firewalld

检查状态

$ service iptables status

停止服务

$ systemctl stop firewalld

重启服务

$ systemctl restart iptables.service

查看规则

iptables -L -n
  • v:显示详细信息,包括每条规则的匹配包数量和匹配字节数
  • x:在 v 的基础上,禁止自动单位换算(K、M) vps侦探
  • n:只显示IP地址和端口号,不将ip解析为域名

标记显示

  • 将所有iptables以序号标记显示
$ iptables -L -n --line-numbers
Chain INPUT (policy ACCEPT)
num  target     prot opt source               destination         
1    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:15672
2    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0            tcp dpt:5672

删除规则

  • 比如要删除INPUT里序号为1的规则
iptables -D INPUT 1

禁用服务

$ systemctl mask firewalld

开机启动

 
systemctl enable iptables.service

以上是关于iptables 详细使用的主要内容,如果未能解决你的问题,请参考以下文章

linux下的防火墙Netfilter配置:iptables的了解与使用(详细)

iptables的基本使用方法

linux配置防火墙详细步骤(iptables命令使用方法)

简述iptales四表五链及详细介绍iptables命令使用方法

Linux中iptables设置详细(转)

Linux中iptables设置详细