linux 配置nginx https 访问认证
来源:互联网 发布:vmware for ubuntu 编辑:程序博客网 时间:2024/05/01 20:30
1 首先查看服务器有没有安装openssl 支持包,
rpm -qa | grep openssl
如果有结果输出,说明已经有了openssl 包的支持
如果没有结果输入 通过命令
yum instance -y openssl yum install -y openssl-devel 来安装openssl 支持
2 我们知道https 访问协议就是通过添加证书的认证 ,采用加密的手段保证了我们信息访问的安全,
接下来就通过openssl 来生成证书所需的原始文件 证书私钥 和 证书请求文件 (csr cerificate signing erquest)其中包含的了服务器的信息和申请单位的信息
openssl req -new -node -sha -newkey rsa:2048 -keyout private.key -out mydomain.csr
输入命令后会有提示信息,根据提示信息输入相关信息后即可,可以参考
再来一个我本地截图,供参考。
3 接下来参看一下生成的文件吧,,
4 利用上面生成的秘钥 和证书请求文件来生成证书,
openssl x509 -req -days 365 -in ./domain.csr -signkey ./private.key -out mydomain.crt
5 查看生成的证书文件,
6 现在开始配置nginx 喽
进入ngInx 配置文件目录 , 用vim 编辑器打开配置文件,
贴上来 方便大家直接粘贴,
server {
listen 443;
server_name test.xbddai.com;
ssl on;
#charset koi8-r;
#access_log logs/host.access.log main;
ssl_certificate /etc/pki/tls/certs/mydomain.cer;
ssl_certificate_key /etc/pki/tls/certs/myprivate.key;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
proxy_pass http://localhost:8083;
}
配置完成后千万要记得重启 nginx 服务器,让配置生效。
/usr/local/nginx/sbin/nginx -s reload
重启过程中如果出现
[emerg] 10464#0: unknown directive "ssl" in /usr/local/nginx-0.6.32/conf/nginx.conf 的问题,则需要重新编译nginx
1 查看编译安装nginx 的时候,编译安装了哪些模块:
[root@iZ23rvxw1mmZ nginx]# ./sbin/nginx -V
nginx version: nginx/1.8.1
built by gcc 4.1.2 20080704 (Red Hat 4.1.2-55)
built with OpenSSL 0.9.8e-fips-rhel5 01 Jul 2008
TLS SNI support disabled
configure arguments: --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
可以看到 ,我已经编译加载了模块 --with_http_ssl_mdule
2 如果您的没有 加载模块 那么重新编译把模块加载进去吧,
进入 nginx 解压缩目录:
[root@iZ23rvxw1mmZ nginx-1.8.1]# ll
total 676
drwxr-xr-x 6 1001 1001 4096 Aug 22 11:05 auto
-rw-r--r-- 1 1001 1001 251319 Jan 26 2016 CHANGES
-rw-r--r-- 1 1001 1001 383019 Jan 26 2016 CHANGES.ru
drwxr-xr-x 2 1001 1001 4096 Dec 21 10:09 conf
-rwxr-xr-x 1 1001 1001 2478 Jan 26 2016 configure
drwxr-xr-x 4 1001 1001 4096 Aug 22 11:05 contrib
drwxr-xr-x 2 1001 1001 4096 Aug 22 11:05 html
-rw-r--r-- 1 1001 1001 1397 Jan 26 2016 LICENSE
-rw-r--r-- 1 root root 366 Feb 8 15:46 Makefile
drwxr-xr-x 2 1001 1001 4096 Aug 22 11:05 man
drwxr-xr-x 3 root root 4096 Feb 8 15:47 objs
-rw-r--r-- 1 1001 1001 49 Jan 26 2016 READ
3 可以看到 configure 用于生成makefile的配置文件,
重新编译: ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
执行完成后,执行make 将makefile文件编译一下生成obj文件(切记不可 make install 不然会把之前安装好的nginx 覆盖掉)
4 接下来需要停止nginx 如果还没有启动,当然就不用理会了,
停止方式可以找到nginx 服务所占用的进程 , 把进程干掉就可以啦,是不是很简单,
需要替换掉nginx 二进制文件
cp ./objs/nginx /usr/local/.nginx/sbin
cp: overwrite `/usr/local/nginx/sbin/nginx'? yes
5 查看一下编译模块 看是否已经将模块编译进去了,, 命令还是步骤1 使用的命令哦!
备注:常用的格式转换
a,得到 pfx 格式的私钥
openssl pkck12 -export -out server.pfx -inkey server.key -in server.crt
b,从pfx文件中分离出 cer 格式的公钥
openssl x509 -inform pem -in server.crt -outform der -out server_public.cer
- linux 配置nginx https 访问认证
- Nginx 配置 https 认证
- Linux下nginx配置https协议访问
- Linux CentOS7配置Nginx支持HTTPS访问
- Nginx配置https访问
- Nginx配置https双向认证
- nginx配置https双向认证
- Nginx配置https双向认证
- Nginx配置https双向认证
- Linux nginx配置https
- linux nginx配置https
- nginx配置https,访问超时
- centos nginx配置https访问
- nginx 配置https访问以及访问http跳转到https
- linux中nginx配置https
- 在linux安装配置svn并实现支持ssl认证https安全访问方式
- nginx配置SSL的https访问
- Nginx配置SSL实现Https访问
- javaWeb学习(三)
- IoT的那些操作系统
- Java多线程学习(吐血超详细总结)
- 【Html基础】之<h1>~<h6> <p> <br> <hr>
- Java提高篇(二六)-----hashCode
- linux 配置nginx https 访问认证
- U盘
- 改gitlab的root/admin密码
- Android studio 如何修改工程的包名
- DataTable的一些基础用法
- APNs消息推送
- Tecohoo VD-206全高清视频会议摄像机
- mongodb
- Java提高篇(二七)-----TreeMap