专栏名称: 马哥Linux运维
马哥linux致力于linux运维培训,连续多年排名第一,订阅者可免费获得学习机会和相关Linux独家实战资料!
目录
相关文章推荐
运维  ·  再见,CDN 巨头:Akamai 宣布 ... ·  3 天前  
51好读  ›  专栏  ›  马哥Linux运维

CentOS 7 上的防火墙设置简明教程 | 以阿里云为例

马哥Linux运维  · 公众号  · 运维  · 2018-05-13 18:00

正文


作者 Crystaleone

马哥教育金牌助教,国内一线高级运维工程师,4年运维经验,熟悉linux系统管理和python运维开发等;有独特的自学秘籍,擅长总结知识化为实战。


最近公司又上了一台服务器,以前都是用 CentOS 6 系统,这次选择使用了 CentOS 7 系统的安装镜像,因为现在程序版本在 CentOS 7 上一般 php 默认就是 5.4 以上的,MySQL 也变成了 mariadb ,但使用都一样而已, Apache 安装的 httpd 程序也是 2.4 的版本,所以就算 yum 安装基本服务也是比较新一些的版本吧。

公司拨款后就在阿里云后台买了台主机,直接 yum 装的 LAMP ,添加虚拟主机的配置文件这里就不说了,网上一堆的配置文档,只记录下,在 CentOS 7 上遇到的坑。

LAMP 环境都搭好,配置文件也准备好了,域名指向也都做好了。开始做 iptbales 防火墙设置了,此时遇到坑了。本以为在 CentOS 7 上,只是使用 firewalld 控制 iptables 的启动与停止等相关操作,不成想根本不是那么回事,害的小弟我吭哧吭哧查半天问题。

要想在阿里云主机上使用 CentOS 7 的防火墙,默认的是 firewalld 程序,如果对此程序配置命令不熟悉,还是使用 iptables 的程序来控制防火墙吧。我是先把 firewalld 程序关闭了且禁止开机启动:

# systemctl stop firewalld.service
# systemctl disable firewalld.service

然后就是,安装 iptables 防火墙,开启防火墙,进行配置即可。

否则,我一开始上来在 CentOS 7 上启用:

systemctl start firewalld.service

然后,就用 iptables 添加了放行的各种规则, INPUT 默认设为 DROP , FORWARD 默认设为 DROP , OUTPUT 默认为 ACCEPT 。

iptables -P INPUT DROP

当设置 后,网站就挂了,经过多次折腾,判断就是这条红色命令的问题,后来又是在网上一通查,最终问题的 firewalld 的问题,对 firewalld 不熟悉,只好安装 CentOS 6 中通用的 iptables 查询,来设置防火墙。

下面就是网上找的在 CentOS 7上设置防火墙方法,亲测放心使用。

安装iptables防火墙
yum install iptables-services #安装
vi /etc/sysconfig/iptables #编辑防火墙配置文件
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
:wq! #保存退出
systemctl restart iptables.service #最后重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动

因为从网上找的文档,也怕踩坑,所以,刚开始我还是使用 iptables 命令,一条条设置的规则,借此机会,也说明下,阿里云设置防火墙遇到的坑。

为了方便说明,查看序号的规则:

首先说明,默认规则:

INPUT链为DROP

FORWARD链为DROP

OUTPUT链为ACCEPT;







请到「今天看啥」查看全文