Nginx部署访问控制(Web)

Posted 王非雨

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Nginx部署访问控制(Web)相关的知识,希望对你有一定的参考价值。

一、nginx

1.优点

1)多并发数:30000 - 50000

2)网易、腾讯等

3)新闻、论坛等

4)静态网页

5)轻量级

6)nginx+tomcat:负载均衡

Apache:模块化设计

二、Nginx

源代码

1.安装软件包

(1)删除本地与yum源 rm -rf /etc/yum.repos.d/*

(2) 配置本地yum源  vim /etc/yum.repos.d/local.repo

(3)安装nginx依赖包  yum -y install pcre-devel zlib-devel

 

(4)创建服务运行用户  useradd -M -s /sbin/nologin nginx

 

(5)将源码包通过xsehll或者lrzsz包命令上传到服务器(这里通过lrzsz)安装完直接通过远程连接软件(xshell)

  拖拽到服务器或者用rz命令自主选择上传

 

(6)解压nginx压缩包到/usr/src/目录下

   tar -zxvf nginx-1.6.0.tar.gz -C /usr/src/

 

(7)进入解压目录/usr/src/nginx-1.6.0/下   cd /usr/src/nginx-1.6.0/

(8)编译nginx功能模块 ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module

 

 详解:

--user:指定运行用户

--group:指定运行组

--with-http_stub_status_module:启用状态统计模块支持

(9)安装nginx网站服务  make && make install

 

2.修改配置文件

//修改配置文件vim /usr/local/nginx/conf/nginx.conf

 

3.启动nginx服务

(1)将命令做软链接或加入到PATH环境变量,方便命令执行(这里指方法一)

方法一:ln -s /usr/local/nginx/sbin/* /usr/local/sbin/

方法二:echo "PATH=$PATH:/usr/local/nginx/sbin/" >>/etc/profile && source /etc/profile

(2)编辑nginx启动脚本   vim /etc/init.d/nginx

 

(3)给nginx启动脚本执行权限  chmod +x /etc/init.d/nginx

(4)启动nginx服务  /etc/init.d/nginx start       

 

(5)设置nginx服务在35级别开机自启 chkconfig --level 35 nginx on

(6)检查配置文件是否有误 nginx -t  

 

4.增加状态统计支持(前提是在编译时需要添加所需要的模块功能才能在配置文件里增加)

(1)编辑nginx配置文件  vim /usr/local/nginx/conf/nginx.conf

(2)重启nginx服务  /etc/init.d/nginx restart

 

(3)关闭nginx服务器的防火墙 /etc/init.d/iptables stop

(4)测试网址:http://192.168.1.10/status(切记测试前一定要关闭服务器的防火墙)

 

本文主要部署nginx、监控、优化

三、访问控制(切记访问控制是在以上搭建好nginx基础上完成)

1.生成密码认证文件(htpasswd)    yum –y install httpd-tools

2.创建可密码认证的账户  htpasswd -c /usr/local/nginx/conf/.hehe hehe

3.将/usr/local/nginx/conf/.hehe文件的所有者更改为nginx

chown nginx /usr/local/nginx/conf/.hehe

 

4.给 /usr/local/nginx/conf/.hehe文件所有者读取权限其他无权限

 

5. 修改配置文件,添加认证选项

(1)编辑nginx配置文件   vim /usr/local/nginx/conf/nginx.conf

(2)重启服务   /etc/init.d/nginx restart

(3)测试nginx访问控制

 

//以上这实验是对nginx做访问控制的(可根据实际情况作调整)

 

以上是关于Nginx部署访问控制(Web)的主要内容,如果未能解决你的问题,请参考以下文章

部署Apache网站服务以及访问控制的实现

高性能轻量级别的web服务 Nginx(编译安装基于授权和客户端访问控制)

Nginx 的配置和访问控制

nginx之访问控制

基于 Nginx + ModSecurity V3 实现对 web 流量的安全访问控制

Nginx -- 访问控制