最近公司又上了一台服务器,以前都是用centos 6系统,这次选择使用了centos 7系统的安装镜像,因为现在程序版本在centos 7上一般php默认就是5.4以上的,mysql也变成了mariadb,但使用都一样而已,apache安装的httpd程序也是2.4的版本,所以就算yum安装基本服务也是比较新一些的版本吧。
公司拨款后就在阿里云后台买了台主机,直接yum装的lamp,添加虚拟主机的配置文件这里就不说了,网上一堆的配置文档,只记录下,在centos7上遇到的坑。
lamp环境都搭好好,配置文件也准备好了,域名指向也都做好了。开始做iptbales防火墙设置了,此时遇到坑了。本以为在centos7上,只是使用firewalld控制iptables的启动与停止等相关操作,不成想根本不是那么回事,害的小弟我吭哧吭哧查半天问题。
要想在阿里云主机上使用centos7的防火墙,默认的是firewalld程序,如果对此程序配置命令不熟悉,还是使用iptables的程序来控制防火墙吧。我是先把firewalld程序关闭了且禁止开机启动:
]# systemctl stop firewalld.service
]# systemctl disable firewalld.service
然后就是,安装iptables防火墙,开启防火墙,进行配置即可。
否则,我一开始上来在centos7上启用:
systemctl start firewalld.service
然后,就用iptables添加了放行的各种规则,INPUT默认设为DROP,FORWARD默认设为DROP,OUTPUT默认为ACCEPT。当设置
iptables -P INPUT DROP
后,网站就挂了,经过多次折腾,判断就是这条红色命令的问题,后来又是在网上一通查,最终问题的firewalld的问题,对firewalld不熟悉,只好安装centos6中通用的iptables查询,来设置防火墙。
下面就是网上找的在centos7上设置防火墙方法,亲测放心使用。
安装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;
15条规则解释如下:
1:80、8080端口是对外开放的web服务端口,22122为ssh端口;
2:开放本地127.0.0.1回环接口,放行本地主机内部通信;
3:放行icmp即允许ping通本机;
4:放行RELATED:相关联的连接;放行ESTABLISHED:连接追踪模板当中存在的记录的连接;
注意此条不添加,阿里云主机的安骑士功能agent会显示离线;关于阿里云主机web页面的相关设置,以后有空再做叙述。
5、6:放行阿里云dns服务器的地址;
7、8:放行公司的ip访问服务器所有端口;
9-15:为阿里云提供的放行安骑士的ip和端口,链接为:https://help.aliyun.com/document_detail/31776.html?spm=5176.product28449.6.116.Llvb9n
按照上述方法,设置防火墙后,保存规则即可。