配置要求:

client:192.168.4.10
proxy:192.168.4.5(eth0) 192.168.2.5(eth1)
web1:192.168.2.100
web2:192.168.2.200
 
1.1 搭建nginx服务器
proxy:
]# yum -y install gcc pcre-devel openssl-devel
]# useradd -s /sbin/nologin nginx
]# ./configure \(安装包内)
> --prefix=/usr/local/nginx \
> --user=nginx  \
> --group=nginx \
> --with-http_ssl_module //开启SSL加密功能
]# make && make install
]# systemctl stop httpd
]# systemctl disable httpd
]# ln -s /usr/local/nginx/sbin/nginx /sbin/
]# nginx
]# netstat -anptu | grep nginx
 
1.2 升级nginx服务器
]# nginx -s  stop
]# mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
]# ./configure  \
> --prefix=/usr/local/nginx \ 
> --user=nginx  \ 
> --group=nginx \ 
> --with-http_ssl_module
]# make && make install
]# cp objs/nginx /usr/local/nginx/sbin/(安装包内)
]# make upgrade  //升级
]# nginx
]# nginx -V
client 测试:
]# firefox http://192.168.4.5
 
2. 配置用户认证
]# vim /usr/local/nginx/conf/nginx.conf
...
server_name  localhost;
     auth_basic "Input Password";
     auth_basic_user_file "/usr/local/nginx/pass";
...
]# yum -y install httpd-tools
]# htpasswd -c /usr/local/nginx/pass tom1
]# htpasswd /usr/local/nginx/pass    tom2  //追加用户,不使用-c选项
]# cat /usr/local/nginx/pass
tom1:$apr1$2kaE07z6$vhGcS7rLiyIZrvsOIV8Zs0
tom2:$apr1$ob0nlqNt$o5Sb1PNK3RkbqRW73.kBB/
]# nginx -s reload
client测试:
]# firefox http://192.168.4.5(要输入账户、密码)
 
3.基于域名的虚拟主机
]# vim /usr/local/nginx/conf/nginx.conf
www.a.com 配置了用户认证
server {
    listen       80;
    server_name  www.a.com;
    auth_basic "Input Password";
    auth_basic_user_file "/usr/local/nginx/pass";
       
    location / {
        root   html;
        index  index.html index.htm;
    }
 
www.b.com 未配置用户认证
erver {
    listen       80;
    server_name  www.b.com;
 
    location / {
        root   www;
        index  index.html index.htm;
    }
]# mkdir /usr/local/nginx/www
]# echo "www" > /usr/local/nginx/www/index.html
]# nginx -s reload
client测试:
]# vim /etc/hosts
192.168.4.5   www.a.com  www.b.com
]# firefox http://www.a.com (输入用户名,密码访问)
]# firefox http://www.b.com;
 
4.SSL虚拟主机
]# cd /usr/local/nginx/conf
]# openssl genrsa > cert.key //生成私钥
]# openssl req -new -x509 -key cert.key > cert.pem //生成证书
]# ls
cert.key  cert.pem ...
]# vim /usr/local/nginx/conf/nginx.conf
 server {
    listen       443 ssl;
    server_name  www.c.com;
 
    ssl_certificate      cert.pem;
    ssl_certificate_key  cert.key;
 
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
 
    ssl_ciphers  HIGH:!aNULL:!MD5;
    ssl_prefer_server_ciphers  on;
 
    location / {
        root   html;
        index  index.html index.htm;
        }
    }
]# nginx -s reload
client:
]# vim /etc/hosts
192.168.4.5 www.a.com  www.b.com  www.c.com
]# firefox https://www.c.com //信任证书后可以访问

十八.搭建Nginx服务器、配置网页认证、基于域名的虚拟主机、ssl虚拟主机的更多相关文章

  1. 高级运维(二):搭建Nginx服务器、用户认证、基于域名的虚拟主机、SSL虚拟主机、Nginx反向代理

    一.搭建Nginx服务器 目标: 在IP地址为192.168.4.5的主机上安装部署Nginx服务,并可以将Nginx服务器,要求编译时启用如下功能: 1> SSL加密功能 2> 设置Ng ...

  2. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

  3. 搭建nginx服务器,虚拟主机,反向代理

    1 搭建Nginx服务器 1.1 问题 在IP地址为192.168.10. 5的主机上安装部署Nginx服务,并可以将Nginx服务器升级到更高版本,要求编译时启用如下功能: SSL加密功能 查看服务 ...

  4. 在阿里云服务器(ECS)上从零开始搭建nginx服务器

    本文介绍了如何在阿里云服务器上从零开始搭建nginx服务器.阿里云服务器(ECS)相信大家都不陌生,感兴趣的同学可以到http://www.aliyun.com/product/ecs去购买,或到体验 ...

  5. Spring Boot 2.X(十八):集成 Spring Security-登录认证和权限控制

    前言 在企业项目开发中,对系统的安全和权限控制往往是必需的,常见的安全框架有 Spring Security.Apache Shiro 等.本文主要简单介绍一下 Spring Security,再通过 ...

  6. Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

    标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...

  7. Centos6.8 搭建Nginx服务器

    Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,其特点是占有内存少,并发能力强,业界内的评价一直很不错,反正用过的都说好,虽然我还 ...

  8. 【四】搭建Nginx服务器

    [任务4]搭建Nginx服务器 [任务4]搭建Nginx服务器 下载Nginx源码包 安装Nginx 解压Nginx安装包 安装Nginx依赖 启动Nginx 安装cgi 下载cgi并解压安装包 编译 ...

  9. 第一次项目上Linux服务器(八:——搭建Nginx图片服务器)

    一.准备工作 安装Nginx,参考历史博客 二.搭建Nginx图片服务器 1.效果 例如:图片通过xftp服务上传到/home/java/upload目录下,我想通过访问Nginx服务器来访问xftp ...

随机推荐

  1. Linux基础-15-samba服务

    1. samba的功能: samba是一个网络服务器,用于Linux和Windows之间共享文件. 2. samba服务的启动.停止.重启 service smb start|stop|restart ...

  2. 邮件标准协议:MIME(Multipurpose Internet Mail Extensions)

    MIME(多用途互联网邮件扩展)指的是一系列电子邮件技术规范 ,主要包括 RFC 2045~2049   传统的电子邮件只能使用 ASCII 字符,导致非英文字符都不能在电子邮件中使用 而且电子邮件中 ...

  3. nodejs模块fs——文件操作api

    // fs模块常用api // 读取文件 .写入文件 .追加文件. 拷贝文件 .删除文件 // 读取文件 // fs.readFile(path[, options], callback) // fs ...

  4. wannafly 挑战赛10 小H和密码

    题意:中文题就不解释了 题解: dp[i][j]表示前i 个轮盘 和一个字符串前j 个字符的匹配情况 ,具体的状态转移解释见代码 #include <cstdio> #include &l ...

  5. 手动实现自己的spring事务注解

    spring事务是基于同一个数据连接来实现的,认识到这一点是spring事务的关键,spring事务的关键点便在于在事务中不管执行几次db操作,始终使用的是同一个数据库连接.通过查看源码,我们可以看到 ...

  6. NOPI 读与写

    Excel读取和写入的完整代码using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using NPOI.XSSF.UserModel;using Sys ...

  7. ivew数控件Tree自定义节点内容示例分析

    ivew数控件Tree自定义节点内容示例分析 demo地址:https://run.iviewui.com/plcWlM4H <template> <Tree :data=" ...

  8. Java 之 字节输出流[OutputStream]

    一.字节输出流 java.io.OutputStream 抽象类是表示字节输出流的所有类的超类,将指定的字节信息写出到目的地. 该类中定义了字节输出流的基本共性功能方法. 公性方法: public v ...

  9. Java 之 字节流

    一.一切皆为字节 一切文件数据(文本.图片.视频等)在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此.所以,字节流可以传输任意文件数据.在操作流的时候,我们要时刻明确,无论使 ...

  10. IntelliJ IDEA.2017.3.4(win7 64位)的安装使用

    下载 1.Idea与Webstorm同为JetBrains公司的产品,因此安装使用方式也极为相似,首先我们打开IDEA的官方下载网站:https://www.jetbrains.com/idea/,点 ...