linux防火墙

Ubuntu

#查看防火墙状态

sudo ufw status

#开启防火墙

sudo ufw enable

#关闭防火墙

sudo ufw disable

CentOs

#查看防火墙状态
systemctl status firewalld
# 开启
sudo service firewalld start
# 重启
sudo service firewalld restart
# 关闭
sudo service firewalld stop

linux防火墙添加端口

防火墙配置文件: /etc/sysconfig/iptables

1.使用命令查看端口开启情况

 iptables -L -n 

2.清除防火墙规则(已有规则可以不进行)

[root@fullstack ~]# iptables -F        #清除预设表filter中的所有规则链的规则
[root@fullstack ~]# iptables -X        #清除预设表filter中使用者自定链中的规则
[root@fullstack~]# /etc/rc.d/init.d/iptables save   #保存以后下次重启才会开启
[root@fullstack ~]# service iptables restart        #重启一下防火墙 

3.设置防火墙规则

//注:如果你是远程SSH登陆的话,当你输入第一个命令回车的时候就应该掉了.因为你没有设置任何规则,可以先关闭防火墙再操作
//关闭防火墙 /etc/init.d/iptables stop    或者   service iptables stop
[root@fullstack ~]# iptables -p INPUT DROP
[root@fullstack ~]# iptables -p OUTPUT ACCEPT
[root@fullstack ~]# iptables -p FORWARD DROP

这样定义是指明超出iptables的两个链规则(INPUT和FORWARD)规则的所有请求被抛弃,超出OUTPUT规则的请求可以接受,即控制输入,随意输出。

4.添加端口号

-A:指定链名 -A和-I。其中-A是添加到规则的末尾;-I可以插入到指定位置,没有指定位置的话默认插入到规则的首部
-p:指定协议类型
-d:指定目标地址
–dport:指定目标端口(destination port 目的端口)
–sport:指定源端口(source port 源端口)

–s 参数是来源(即192.168.1.2)

-j:指定动作类型

[root@fullstack ~]# iptables -A INPUT -p tcp --dport 80 -j ACCEPT
[root@fullstack ~]# iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
[root@fullstack ~]# /etc/rc.d/init.d/iptables save
[root@fullstack ~]# service iptables restart        #重启一下防火墙 

这样就给INPUT和OUTPUT添加了80端口的tcp连接,最后别忘了保存一下

5、删除端口号

[root@singledb ~]# iptables -D INPUT -p tcp --dport 443 -j ACCEPT
[root@singledb ~]# iptables -D OUTPUT -p tcp --dport 443 -j ACCEPT
[root@singledb ~]# iptables -L -n
[root@fullstack ~]# /etc/rc.d/init.d/iptables save
[root@fullstack ~]# service iptables restart        #重启一下防火墙 

相关防火墙信息可以查看 http://blog.sina.com.cn/s/blog_14d3162000102ww4y.html

防火墙命令手册 http://man.linuxde.net/iptables

上一篇:解决docker容器开启端口映射后,会自动在防火墙上打开端口的问题


下一篇:iptables学习[07]: iptables扩展匹配条件--显式扩展