首页 » Nginx » Nginx+tomcat配置https

Nginx+tomcat配置https

原文 http://blog.csdn.net/a20023930/article/details/79163233

2018-01-25 17:41:10阅读(444)

问:为什么要用https


为了数据传输安全。


问:为什么用https传输就安全了?


这里:

http://blog.csdn.net/jasonjwl/article/details/50985271


问:Nginx和tomcat都要配置吗?


不需要都配置。只配置nginx就行。


问:nginx怎么配置https。


1.先去买个证书。

https://www.getssl.cn


引用:

解压后应包含两个文件:

yourdomain.com.crt     (服务器证书)
yourdomain.com.key   (私钥文件)如果为空请将生成CSR时保存的私钥内容粘贴在文件中

环境检测,检测命令如下(测试nginx是否支持SSL)

nginx -V

如果有显示 –with-http_ssl_module 表示已编译openssl,支持安装ssl

如果没有安装请下载nginx源码重新编译

./configure --with-http_stub_status_module --with-http_ssl_module
make && make install

配置Nginx

server {
listen 80;
listen 443 ssl;
server_name www.getssl.cn;
ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
ssl_certificate /etc/ssl/yourdomain.com.crt;
ssl_certificate_key /etc/ssl/yourdomain.com.key;
ssl_prefer_server_ciphers on;
#自动跳转到HTTPS (可选)
if ($server_port = 80) {
rewrite ^(.*)$ https://$host$1 permanent;
}
location / {
root /home/getssl/;
index index.php;
}
}

以上配置仅供参考,其他参数请根据生产环境需要添加。

安装后重启nginx使其生效

centos6
service nginx restart
centos7
systemctl restart nginx

问题排查:

如果使用CDN(加速器),需要在CDN上面安装证书,国内免费加速的都不支持https(已知阿里云cdn支持)

检查443端口是否启动   使用下面命令 netstat -apnt | grep 443    (如果没有启动检查配置文件或者端口是否冲突)

443端口如果已经启动,但不能访问,请检查防火墙(或者安全狗) ,允许443端口.

linux iptables使用下面命令:

iptables -A INPUT -p tcp -m tcp --dport https -j ACCEPT


问:tomcat 如何配置https:


一步: 进入Tomcat安装目录,  d:/apache-tomcat-8.0.18, 把下载的jks文件放在tomcat安装目录即可。

d:/apache-tomcat-8.0.18/getssl.cn.jks

第二步: 打开tomcat配置文件 conf/server.xml

tomcat默认一般是8080端口或者 80端口,先找到这一段。

<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />

在这段下面插入下面配置:

<Connector port="443" protocol="org.apache.coyote.http11.Http11NioProtocol"
maxThreads="150" SSLEnabled="true" scheme="https" secure="true" sslEnabledProtocols="TLSv1.2,TLSv1.1,TLSv1" 
clientAuth="false" sslProtocol="TLS" keystoreFile="getssl.cn.jks" keystorePass="123456" />
keystoreFile=”getssl.cn.jks”            【 jks 文件名需要修改】keystorePass=”123456″                 【jks密码】

注意事项:

防火墙要允许443端口使用CDN,需要让CDN服务商安装SSLTomcat 6.0上面配置如果无法启动,把protocol修改为 protocol=”HTTP/1.1″windows平台运行tomcat , bin目录下必须有tcnative-1.dll
org.apache.coyote.http11.Http11Protocol - blocking Java connector
org.apache.coyote.http11.Http11NioProtocol - non blocking Java connector
org.apache.coyote.http11.Http11AprProtocol - the APR/native connector.
tomcat 修改DHE大小
-Djdk.tls.ephemeralDHKeySize=2048


最新发布

CentOS专题

关于本站

5ibc.net旗下博客站精品博文小部分原创、大部分从互联网收集整理。尊重作者版权、传播精品博文,让更多编程爱好者知晓!

小提示

按 Ctrl+D 键,
把本文加入收藏夹