[web][nginx] 初识nginx -- 使用nginx搭建https DPI解码测试环境
环境 CentOS 7 X86
文档:
安装:
[root@dpdk ~]# cat /etc/yum.repos.d/nginx.repo
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/7/$basearch/
gpgcheck=
enabled=
[root@dpdk ~]#
[root@dpdk ~]# yum install nginx
配置文件: 默认不需要更改
[root@dpdk ~]# vim /etc/nginx/nginx.conf
[root@dpdk ~]# vim /etc/nginx/conf.d/default.conf
启动:
# nginx
或
# systemctl start nginx
浏览器直接访问即可。
自定义页:拷贝至配置文件指定的目录后,就可以在浏览器中访问了。
[root@dpdk html]# pwd
/usr/share/nginx/html
[root@dpdk html]# ll
total
-rw-r--r--. root root Apr : 50x.html
-rw-r--r--. root root May : index_a.html
-rw-r--r--. root root May : index.html
-rw-r--r--. root root May : lonely.jpg
[root@dpdk html]#
如: http://192.168.7.4/index_a.html
可以设置反向代理,使用 proxy_pass / fastcgi_pass 命令。参见文档。 https://nginx.org/en/docs/beginners_guide.html
配置:
文档已跳转至此处 https://www.nginx.com/resources/admin-guide/?_ga=2.110665989.1403939205.1494566587-476641588.1494561559
如何配https:
https://nginx.org/en/docs/http/ngx_http_ssl_module.html
[root@dpdk ~]# cd /etc/nginx/conf.d/
[root@dpdk conf.d]# touch https.conf
自签名证书:[https][openssl] OpenSSL 公钥、私钥以及自签名证书
生成根证书:
/home/tong/Keys/https [tong@T7] [:]
> openssl genrsa -out root.key
/home/tong/Keys/https [tong@T7] [:]
> openssl req -new -key root.key -out root.csr -subj "/C=CN/ST=BeiJing/L=BeiJing/O=Tartaglia/CN=TTTrust/emailAddress=ca@tartaglia.org"
/home/tong/Keys/https [tong@T7] [:]
> openssl x509 -req -days -sha1 -extensions v3_ca -signkey root.key -in root.csr -out root.cer
Signature ok
subject=C = CN, ST = BeiJing, L = BeiJing, O = Tartaglia, CN = TTTrust, emailAddress = ca@tartaglia.org
Getting Private key
用根证书签名服务器证书
/home/tong/Keys/https/test [tong@T7] [:]
> openssl genrsa -out server-key.pem
Generating RSA private key, bit long modulus
..........................................+++
.............................+++
e is (0x010001) /home/tong/Keys/https/test [tong@T7] [:]
> openssl req -new -key server-key.pem -out server.csr -subj "/C=CN/ST=BeiJing/L=BeiJing/O=Tartaglia/OU=onescorpion/CN=TTTrust/emailAddress=ones@tartaglia.org"
/home/tong/Keys/https/test [tong@T7] [:]
> openssl x509 -req -days -sha1 -extensions v3_req -CA ../root/root.cer -CAkey ../root/root.key -CAserial ca.srl -CAcreateserial -in server.csr -out server.cer
Signature ok
subject=C = CN, ST = BeiJing, L = BeiJing, O = Tartaglia, OU = onescorpion, CN = TTTrust, emailAddress = ones@tartaglia.org
Getting CA Private Key
/home/tong/Keys/https/test [tong@T7] [:]
> openssl x509 -outform der -in server.cer -out pulicserver.ccerrificate.der
/home/tong/Keys/https/root [tong@T7] [:]
> ll
total 12K
-rw-r--r-- tong tong .3K May : root.cer
-rw-r--r-- tong tong .1K May : root.csr
-rw------- tong tong .7K May : root.key
/home/tong/Keys/https/test [tong@T7] [:]
> ll
total 20K
-rw-r--r-- tong tong May : ca.srl
-rw-r--r-- tong tong May : pulicserver.ccerrificate.der
-rw-r--r-- tong tong .3K May : server.cer
-rw-r--r-- tong tong .1K May : server.csr
-rw------- tong tong .7K May : server-key.pem
编辑 https.conf
[root@dpdk conf.d]# cat https.conf server {
listen ssl;
ssl_certificate /etc/nginx/conf.d/server.cer;
# ssl_certificate_key should be PEM format.
ssl_certificate_key /etc/nginx/conf.d/server-key.pem;
# see 'man ciphers' for detail.
ssl_ciphers 'DEFAULT:!DHE:!ECDHE:!kDHE:!kECDHE:!ECDH';
# ssl_ciphers 'RSA:!NULL'; location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
[root@dpdk conf.d]#
---------------- update @ 20170522 (发给同事的邮件) --------------------
使用如下配置,可以启用nginx的https
[root@dpdk conf.d]# cat https.conf server {
listen 1443 ssl;
ssl_certificate /etc/nginx/conf.d/server.cer;
# ssl_certificate_key should be PEM format.
ssl_certificate_key /etc/nginx/conf.d/server-key.pem;
# see 'man ciphers' for detail.
ssl_ciphers 'DEFAULT:!DHE:!ECDHE:!kDHE:!kECDHE:!ECDH';
# ssl_ciphers 'RSA:!NULL'; location / {
root /usr/share/nginx/html;
index index.html index.htm;
}
}
[root@dpdk conf.d]#
其中,ssl_ciphers 是用来指定加密算法的。
这个选项的参数和语法,是由openssl决定的,默认是 ALL:!COMPLEMENTOFDEFAULT:!eNULL
具体的语法修改,参考手册 man ciphers 里面的 CIPHER STRINGS 章节。
禁用PFS的途径实际上就是禁用PFS算法,一般带ECDHE / DHE
关键字的算法,都是PFS的。通过测试,我选用了如下关键字,你可以多尝试一下:
'DEFAULT:!DHE:!ECDHE:!kDHE:!kECDHE:!ECDH';
另外,使用如下命令,可以查看你的参数,选用了什么算法:
/home/tong/VM/base [tong@T7] [17:39]
> openssl ciphers -v 'ALL:!COMPLEMENTOFDEFAULT:!eNULL'
[web][nginx] 初识nginx -- 使用nginx搭建https DPI解码测试环境的更多相关文章
- https,https的本地测试环境搭建,asp.net结合https的代码实现,http网站转换成https网站之后遇到的问题
一:什么是https SSL(Security Socket Layer)全称是加密套接字协议层,它位于HTTP协议层和TCP协议层之间,用于建立用户与服务器之间的加密通信,确保所传递信息的安 ...
- 【转】https,https的本地测试环境搭建,asp.net结合https的代码实现,http网站转换成https网站之后遇到的问题
正需要这个,写的很好,就转过来了 转自: http://www.cnblogs.com/naniannayue/ 一:什么是https SSL(Security Socket Layer)全称 ...
- 【Head First Servlets and JSP】笔记6:什么是响应首部 & 快速搭建一个简单的测试环境
搭建简单的测试环境 什么是响应首部 最简单的响应首部——Content-Type 设置响应首部 请求重定向与响应首部 在浏览器中查看Response Headers 1.先快速搭建一个简单的测试环境, ...
- Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)
原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...
- Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)-转帖篇
原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.ne ...
- Web前端页面的浏览器兼容性测试心得(二)搭建原汁原味的IE8测试环境
如果你做的页面被老板或PM要求兼容IE8,你就值得同情了.IE8不支持HTML5,在2017年的前端界,开发者不涉及HTML5标准简直寸步难行.然而,有一个可怕的事实客观存在,那就是IE8是Win7系 ...
- win7 windows server 2008R2下 https SSL证书安装的搭配(搭配https ssl本地测试环境)
原文:http://www.cnblogs.com/naniannayue/archive/2012/11/19/2776948.html 要想成功架设SSL安全站点关键要具备以下几个条件. 1.需要 ...
- App自动化测试探索(二)MAC环境搭建iOS+Python+Appium测试环境
环境搭建要求,MAC 机器一台,要求 Xcode 8.0以上 1. 安装 Homebrew /usr/bin/ruby -e "$(curl -fsSL https://raw.github ...
- VMware搭建Oracle 11g RAC测试环境 For Linux
环境如下: Linux操作系统:Centos 6.5 64bit (这个版本的redhat 6内核等OS在安装grid最后执行root.sh时会出现crs-4124,是oracle11.2.0.1的b ...
随机推荐
- Unity的Attribute(特性)还算多吧
属性 (Attribute) 使用 Unity 的C#语言 ,利用属性(Attribute)来类定义和变量定义或区分其他的变量,您可以设置一种特殊行为.* 1 例如,您添加[SerializeFiel ...
- linux每日命令(3):ln命令
ln是linux中又一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接.当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在 ...
- 【Unity】讯飞语音识别SDK
1.进入讯飞官网,注册帐号,进入控制台,创建新应用UnityXunfeiDemo,平台选Android.在当前应用这点下载SDK,添加AI能力(添加新服务),选择语音听写,即可下载安卓SDK(下称讯飞 ...
- Vue.js常用指令:v-bind
一.什么是v-bind指令 v-bind指令用于响应更新HTML特性,允许将一个或多个属性动态绑定到表达式.v-bind是应用在动态属性上面的. 二.语法 v-bind语法如下: v-bind:动态属 ...
- Java如何替换所有指定(出现)的字符串?
在Java编程中,如何替换所有指定(出现)的字符串? 以下示例演示如何使用Matcher类的replaceAll()方法替换字符串中的所有出现的子字符串. package com.yiibai; im ...
- Java如何验证电子邮件地址格式?
在Java编程中,如何验证电子邮件地址格式? 以下示例演示如何使用String类的matches()方法来验证电子邮件地址. package com.yiibai; public class Vali ...
- Gson - 学习
Google 的 Gson 库,Gson 是一个非常强大的库,可以将 JSON 格式的数据转化成 Java 对象,也支持将 Java 对象转成 JSON 数据格式. Gson 依赖 本文将会快速开始使 ...
- Mac zsh切换bash bash切换zsh
切换bash ————>>>chsh -s /bin/bash 切换zsh ------->>>chsh -s /bin/zsh
- MTK 自定义系统服务
添加系统服务需要添加aidl,service,manager文件,需要修改SystemServer,Context,ContextImpl 下面举例进行说明,主要添加一个服务,用于获取系统时间和版本号 ...
- redis如何后台启动
当安装好redis之后,运行redis-server命令之后,显示如图所示: 但是这样没有办法在这个tab下做任何操作了,因为这个时候使用Ctrl+c之后,就变成了这个样子 然后就关闭了,那么我想让r ...