linux防火墙管理

Posted on 2023-03-03 17:27  brad1208  阅读(81)  评论(0编辑  收藏  举报

安装systemctl:
yum -y install iptables-services

设置开机启动
systemctl enable iptables.service

如果报错:Failed to start IPv4 firewall with iptables.

因为centos7默认的防火墙是firewalld防火墙,不是使用iptables,因此需要先关闭firewalld服务,或者干脆使用默认的firewalld防火墙。
关闭firewalld:
systemctl stop firewalld  
systemctl mask firewalld

开启443端口
iptables -A INPUT -p tcp --dport 443 -j ACCEPT

保存规则
service iptables save

开启服务
systemctl restart iptables.service

 

#查看当前所有tcp端口
netstat -ntlp

#查看防火墙状态
systemctl status firewalld

#查看已开放端口情况
firewall-cmd --list-all

 

防火墙常规操作:

1、 重启后永久性生效:
开启:chkconfig iptables on
关闭:chkconfig iptables off

2、 即时生效,重启后失效:
开启:service iptables start
关闭:service iptables stop

3、Linux 防火墙开放特定端口
iptables是linux下的防火墙,同时也是服务名称。
service iptables status 查看防火墙状态
service iptables start 开启防火墙
service iptables stop 关闭防火墙
service iptables restart 重启防火墙

防火墙开放特定端口:
1.文件/etc/sysconfig/iptables
2.添加:
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT
 ★具体参照/etc/sysconfig/iptables中的配置,一般默认会有一个22端口开放★
★数字3306代表开放3306端口,也可以改成其他的端口.★

3.重启防火墙
service iptables restart

4.保存对防火墙的设置
serivce iptables save 

5.查看iptables规则及编号
iptables -nL –line-number 

6.查看iptables规则及编号
iptables -nL –line-number 

7.关闭所有的INPUT FORWARD(转发) OUTPUT的所有端口 
iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT DROP 

8.只打开22端口
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
iptables -A OUTPUT -p tcp –sport 22 -j ACCEPT
参数讲解:
–A 参数就看成是添加一条规则
–p 指定是什么协议,我们常用的tcp 协议,当然也有udp,例如53端口的DNS
–dport 就是目标端口,当数据从外部进入服务器为目标端口
–sport 数据从服务器出去,则为数据源端口使用
–j 就是指定是 ACCEPT -接收 或者 DROP 不接收

9.禁止某个IP访问
iptables -A INPUT -p tcp -s 192.168.1.2 -j DROP