码迷,mamicode.com
首页 > 其他好文 > 详细

Nginx简介及用户认证、访问控制和反向代理配置

时间:2016-04-15 23:18:31      阅读:288      评论:0      收藏:0      [点我收藏+]

标签:nginx简介及用户认证、访问控制和反向代理配置

      Nginx 是一个很强大的高性能Web反向代理服务器及电子邮件(IMAP/POP3)代理服务器,由俄罗斯程序员设计师Igor Syaoev所开发,官方网站:http://nginx.org/  特点是占有内存少、并发能力强。

     Nginx配置文件及目录简介:

          - /usr/local/nginx/                                                           安装目录

          - /usr/local/nginx/conf/nginx.conf                                   主配置文件

          - /var/www/html                                                              网页目录

          - /usr/local/nginx/sbin/nginx                                            nginx启动脚本

      Nginx软件安装:

          yum -y install gcc pcre-devel zlib-devel openssl-devel  安装依赖包

          yum -y groupinstall  "开发工具"

          tar -zxvf nginx-1.8.0.tar.gz                                                解压tar包

          cd nginx-1.8.0                                                                  直接cd到nginx-1.8.0

          ./configure \                                                                    直接执行./configure 参数

            > --prefix=/usr/local/nginx \                                          指定安装路径

            > --user=nginx \                                                            指定用户

            > --group=nginx \                                                         指定组 

            > --with-http_stub_status_module \                               开启状态、统计功能

            > --with-htpp_ssl_module                                              开启SSL加密功能   

          useradd nginx                                                                  权限

          make && make install                                                      编译并安装

          service httpd stop                                                             关闭httpd服务避免端口冲突

          /usr/local/nginx/sbin/nginx                                               nginx服务启用

          /usr/local/nginx/sbin/nginx -s stop                                   nginx服务关闭

         killall -9 nginx                                                                    杀进程

         kill  -信号   pid号

        常见信号:

        TERM, INT 快速关闭 

        QUIT 从容关闭,关闭主进程及子进程    

        HUP  重载配置文件

        USR1 重新打开日志文件 

        USR2 平滑升级可执行程序

        kill -HUP `cat /usr/local/nginx/logs/nginx.pid`          重启服务

平滑升级Nginx服务(不停止服务的情况下):

         ps -C nginx                                                                      查看nginx进程(如有进程“杀”)

         tar -zxvf nginx-1.9.2.tar.gz                                                解压tar包(1.9.2升级包)

         cd nginx1.9.2                              直接cd到根下的nginx-1.8.0(具体要看你解压时的目录为准)

          ./configure \                                                                    直接执行./configure 参数

            > --prefix=/usr/local/nginx \                                          指定安装路径

            > --user=nginx \                                                            指定用户

            > --group=nginx \                                                         指定组

          make                                                                               编译

          cd /usr/local/nginx/sbin                                                   直接cd到nginx启动脚本目录下               mv nginx  nginxold                                                          改名旧脚本(备份)

          cd / nginx-1.9.2/objs                cd到根目录nginx-1.9.2/objs(具体要看你解压时的目录为准)

          cp nginx /usr/localnginx/sbin                       在/objs目录下cp nginx到/usr/localnginx/sbin

          cd / nginx-1.9.2                                                                直接cd到根下的nginx-1.8.0

          make upgrade                                                                  升级软件命令

          /usr/localnginx/sbin/nginx -v                                            查看nginx服务版本

Nginx用户认证与访问控制配置如下:

          实现以下服务:

                 访问web页面时需要进行用户认证,用户名:route(可以任意用户名),密码是:123456,在/uer/local/nginx/html/下创建二级目录/data(可以任意名称),并生成index.htnl文档。在/data目录下的index.html页面只能192.168.1.11可以访问(或者任意网段)。拓扑如下:

技术分享

在Nginx服务器1.10配置如下:

        vim /usr/local/nginx/conf/nginx.conf

            server {

 36            listen       80;

 37            server_name  localhost;                                                指定本机用户名

 38            auth_basic "Input Password";                                        添加用户认证提示符

 39            auth_basic_user_file pass.txt;                                         添加用户认证密码文件

 40 

 41            #charset koi8-r;

 42 

 43            #access_log  logs/host.access.log  main;

 44 

 45         location / {

 46             root   html;                                                                  网页目录 

 47             index  index.html index.htm;                                        网页目录下index.html文档

 48         }

 49         location /route {                                                               添加用户名   

 50                  allow 192.168.4.11;                                                  访问控制仅限4.11可以访问

 51                  deny  all;                                                                 拒绝所有

 52             index  index.html index.htm;

 53         }

         mkdir /usr/local/nginx/html/data                                          创建二级网页目录

         echo "data" > /usr/local/nginx/html/data/index.html        在二级目录下写入index.html文档

  然后使用htpasswd命令创建用户文件,首先查看一下系统中已安装httpd-tools

         htpasswd -c /usr/local/nginx/conf/pass.txt route                    生成用户

         New password:                                                                      输入用户密码

         Re-type new password:                                                          再次确认用户密码

         Adding password for user route                                             此用户添加成功

         /usr/local/nginx/sbin/nginx  -s  stop                                      关闭Nginx服务                                /usr/local/nginx/sbin/nginx                                                    启用Nginx服务

在Linux客户端4.11配置如下:

         Firefox http://192.168.1.10                                                      提示输入用户名与密码

         Firefox http://192.168.1.10/route                                             提示输入用户名与密码

可以登录非192.168.1.11的任意客户端进行访问测试。

本文出自 “Linux” 博客,请务必保留此出处http://it1903.blog.51cto.com/10240512/1764230

Nginx简介及用户认证、访问控制和反向代理配置

标签:nginx简介及用户认证、访问控制和反向代理配置

原文地址:http://it1903.blog.51cto.com/10240512/1764230

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!