一文快速了解iptables 和systemctl | 快速了解linux防火墙

Posted smallsha

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一文快速了解iptables 和systemctl | 快速了解linux防火墙相关的知识,希望对你有一定的参考价值。

docker网络配置以及docker操作

CentOS 7 中默认的防火墙是 FireWall

firewall

systemctl stop firewalld.service

systemctl start firewalld.service

systemctl status nfs-server.service

systemctl restart nfs-server.service

systemctl list -units --type=service

systemctl disable firewalld.service

systemctl enable nfs-server.service

安装 iptables

yum install iptables-services

vim /etc/sysconfig/iptables

# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to
this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j A
CCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 21 -j A
CCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 20 -j A
CCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -j A
CCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 10020:1
0030 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT

最后重启防火墙使配置生效

systemctl restart iptables.service

设置开机启动

systemctl enable iptables.service

关闭 SELINUX 的方法

vim /etc/selinux/config
SELINUX=disabled #增加

使配置生效

setenforce 0

规则的查看

iptables -L -n

iptables-save

清除所有已制定的规则

iptables -F

清除用户 "自定义"

iptables -X

将所有的 chain 的计数与流量统计都归零

iptables -Z
target : 代表进行的操作,ACCEPT是放行,而 REJECT 则是拒绝,此外,尚有 DROP(丢弃)的项目;

prot : 代表使用的数据包协议;

opt : 额外的选项说明;

source : 针对来源 IP;

destination : 针对目的 IP

举例,修改默认策略,信任内部网络,严格对待 INPUT

iptables  -P  INPUT  DROP;    #丢弃

iptables  -P  OUTPUT  ACCEPT;

iptables  -P  FORWARD  ACCEPT;

最后使用  iptables-save  查看

允许本地回环接口(即运行本机访问本机)

iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT

允许所有本机向外的访问

iptables -A OUTPUT -j ACCEPT

开启22端口

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

允许访问80端口

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

允许指定IP访问22

iptables -I INPUT -s 192.168.0.19 -p tcp --dport 22 -j ACCEPT

屏蔽单个IP的命令是

iptables -I INPUT -s 123.45.6.7 -j DROP

封整个段即从123.0.0.1到123.255.255.254的命令

iptables -I INPUT -s 123.0.0.0/8 -j DROP

封IP段即从123.45.0.1到123.45.255.254的命令

iptables -I INPUT -s 124.45.0.0/16 -j DROP

封IP段即从123.45.6.1到123.45.6.254的命令是

iptables -I INPUT -s 123.45.6.0/24 -j DROP

删除已添加的iptables规则

iptables -D INPUT 8

保存规则

service iptables save

重启服务

service iptables restart

允许Ping

iptables -A INPUT -p icmp --icmp-type echo-request -j ACCEPT

iptables -A OUTPUT -p icmp --icmp-type echo-reply -j ACCEPT

禁Ping

iptables -A INPUT -p icmp --icmp-type 8 -s 0/0 -j DROP

以上是关于一文快速了解iptables 和systemctl | 快速了解linux防火墙的主要内容,如果未能解决你的问题,请参考以下文章

一文了解iptables

Linux Redirecting to /bin/systemctl restart iptables.service

解决service iptables save出错please try to use systemctl.

一文带你快速了解 Spark 架构设计与原理思想

一文快速了解以太坊伦敦硬分叉和EIP-1559

一文快速了解火山引擎 A/B 测试平台