号外:《黑客攻防入门学习课程》现已推出国庆大促活动,喜欢的朋友抓紧时间,先到先得、优惠券数量有限!!!

CentOS_7 下安装和配置 Nginx 服务

系统运维 泰泰 465℃ 0评论

【前言】

这回我来讲解下CentOS7.x下如何安装和配置Nginx服务。

Nginx的历史不在此赘述,更多信息可在网络上查询;它的特点在于轻量、快、支持并发数高是它的特性。

本篇教程将以Nginx源码的方式进行服务的安装!!

(建议全程使用root用户进行操作)

一、安装依赖工具

首先在正式安装Nginx服务时,我们先来安装其依赖的一些工具,如果你的系统已经安装了这些工具,可以忽略此步骤:

1、Nginx源码是以gcc的环境进行编译,所以centos中需要安装该环境来编译Nginx 。

2、Nginx的http模块需要使用pcre来解析正则表达式。

3、安装依赖的解压包

4、可选的https安全协议安装

二、安装与测试Nginx服务

1)看和下载最新的Nginx源码

地址:https://nginx.org/en/download.html

作为新手,我在这里建议大家下载官网中提供的stable version版本,该版本是稳定版可以让新手避免一些不必要的问题。

这里直接在终端下用命令进行下载:

注意:nginx-1.12.2.tar.gz字符请根据官网当前提供的最新版本进行更改。

2)解压下载好的Nginx源码压缩包

3)进入解压缩后的Nginx源码目录

这里就是Nginx的所有源码了,有兴趣的朋友可深入去研究一下,后续有机会我再推出相关的博文。

4)编译和安装Nginx源码

到目前为止我们已经拿到了Nginx的源码了,下面就开始对源码进行编译和安装:

编译和安装共3步,分别是(注意去掉#号):

执行完以上的3步后,Nginx服务我们就已经安装完成了,下面开始启动Nginx服务并进行访问测试,是不是想想就激动了呢!

5)启动Nginx服务

一般编译安装完的软件都会放在/usr目录中,注意是 usr 不是 user,这是Unix System Resource,是Unix系统资源的缩写。

我们安装的 Nginx 服务就在 /usr/local/nginx 目录中,如果你实在找不到该目录,可使用 # whereis nginx 指令进行显示,它会告诉你Nginx安装目录在哪里。

好,下面我们就进入该服务目录中:

Nginx服务的控制命令都存放于/usr/local/nginx/sbin文件夹中,下面对Nginx服务的启动、停止等操作做个简单的介绍:

说明:

./nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。

./nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

这时我们只需将终端的工作目录切换到sbin下,并执行./nginx 即可启动 Nginx 服务。

6)查看Nginx服务进程

如果看到类似以下的提示,那么恭喜你Nginx启动成功了。

root      19763  0.0  0.0  20496   572 ?        Ss   16:31   0:00 nginx: master process ./nginx

nobody    19766  0.0  0.1  23024  1572 ?        S    16:31   0:00 nginx: worker process

7)远程访问测试

在远程主机浏览器的地址栏中输入 localhost 或 本机的 IP 地址就可看到访问情况。

当网页显示  Welcome to nginx!…  字样表示 Nginx 服务访问正常。

如果无法访问,这是因为centos系统的防火墙禁用了80/8080/443这些端口,你可以选择关闭防火墙 或者 配置防火墙监听 80/8080/443/这些端口即可!

以下以关闭防火墙为例:

执行完以上的操作后,再次输入IP地址访问,如无异常就可以获得Nginx的服务了!!

【防火墙拓展篇】

在上文中,我们为了让Nginx服务正常运行,而关闭了CentOS服务器的防火墙,这就带来一个问题,那就是‘服务器安全’问题,为了解决这个问题,我们将在这里展开谈论:

在CentOS 系列的系统中,CentOS_7.x以上默认firewall为防火墙配置,为了解决防火墙安全这个问题,我们使用iptables配置 来代替原有的 firewall 配置。

1)首先查看默认防火墙状态

(关闭后显示not running,开启后显示running)

如果 firewall 正在运行,那么我们先将它关闭,命令如下:

下面在给大家提供一些关于默认firewlall防火墙的操作指令:

添加  firewall-cmd –zone=public –add-port=80/tcp –permanent    (–permanent永久生效,没有此参数重启后失效)

重载  firewall-cmd –reload

查看  firewall-cmd –zone=public –query-port=80/tcp

删除  firewall-cmd –zone= public –remove-port=80/tcp –permanent

2)配置iptables 规则

在配置iptables前,我们需要安装iptables服务:

安装好后,开始编辑这个防火墙配置文件,该文件存放在 /etc/sysconfig/iptables 目录中:

加入以下代码:

-A INPUT -p tcp -m state –state NEW -m tcp –dport 80 -j ACCEPT

-A INPUT -p tcp -m state –state NEW -m tcp –dport 8080 -j ACCEPT

-A INPUT -p tcp -m state –state NEW -m tcp –dport 443 -j ACCEPT

说明:

(1)  80,8080是http服务访问端口,443 是https 服务访问端口。

(2)  iptables 配置文件默认 开启了22 端口,即 ssh 远程访问控制服务。

添加成功后,保存、重启 iptables 防火墙服务:

3)配置防火墙开机启动

好啦!教程就到这啦!

转载请注明:泰泰博客 » CentOS_7 下安装和配置 Nginx 服务

喜欢 (0)or分享 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址(选填)