nginx,apache,tomcat配置https的阿里提供的文档

 

安装证书

( 1 ) 打开 Nginx 安装目录下 conf 目录中的 nginx.conf 文件,找到
# HTTPS server
# #server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
# ssl_prefer_server_ciphers on;
# location / {
#
#
#}
#}
( 2 ) 将其修改为 ( 在 nginx 安装目录下创建 sslkey 目录,将 for Nginx 里面的两个证书文件拷贝到 sslkey 目录下 ) :
server {
listen 443; server_name localhost;
ssl on;
root html;
index index.html index.htm;
ssl_certificate   磁盘目录/订单号.pem;
ssl_certificate_key  磁盘目录/订单号.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
ssl_prefer_server_ciphers on;
location / {
root html;
index index.html index.htm;
}
}

保存退出。

( 3 ) 重启 Nginx。通过 https 方式访问您的站点,测试站点证书的安装配置。

apache 配置文档

安装证书
( 1 ) 打开 apache 安装目录下 conf 目录中的 httpd.conf 文件,找到

#LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
#Include conf/extra/httpd_ssl.conf

( 2 ) 打开 apache 安装目录下 conf/extra 目录中的 httpd-ssl.conf 文件 ( 注释:yum 安装配置目录:conf.d/ssl.confubuntu/apache2 安装目录:conf/sites-enabled/*.conf ), 在配置文件中查找以下配置语句:

·添加 SSL 协议支持语句,关闭不安全的协议和加密套件
SSLProtocol all -SSLv2 -SSLv3
·修改加密套件如下
SSLCipherSuite AESGCM:ALL:!DH:!EXPORT:!RC4:+HIGH:!MEDIUM:!LOW:!aNULL:!eNULL;
·将服务器证书公钥配置到该路径下(在 conf 目录下创建 ssl 目录,将 for Apache 里面的三 个证书文件拷贝到 ssl 目录下)
SSLCertificateFile conf/ssl/public.pem (证书公钥)
·将服务器证书私钥配置到该路径下
SSLCertificateKeyFile conf/ssl/订单号.key (证书私钥)
·将服务器证书链配置到该路径下
SSLCertificateChainFile conf/ssl/chain.pem (证书链)删除行首的“#”号注释符

保存退出。
( 3 ) 重启 Apache。重启方式:进入 Apache 安装目录下的 bin 目录,运行如下命令 ./apachectl -k stop./apachectl -k start

tomcat配置文档

安装证书
Tomcat支持JKS格式证书,从Tomcat7开始也支持PFX格式证书,两种证书格式任选其一。下载包中包含PFX格式证书和密码文件。
1、PFX证书安装

找到安装 Tomcat 目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443" 标签,增加如下属性:

keystoreFile="/你的磁盘目录/订单号.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443" protocol="HTTP/1.1"
    maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
    keystoreFile="/你的磁盘目录/订单号.pfx"
    keystoreType="PKCS12"
    keystorePass="证书密码"
    sslEnabledProtocols="TLSv1"
    clientAuth="false" sslProtocol="TLS" />

2、JKS证书安装
( 1 ) 使用java jdk将PFX格式证书转换为JKS格式证书(windows环境注意在%JAVA_HOME%/jdk/bin目录下执行)

keytool -importkeystore -srckeystore 订单号.pfx -destkeystore your-name.jks -srcstoretype PKCS12 -deststoretype JKS

回车后输入一次PFX证书密码,然后输入两次要设置的JKS证书密码,并牢记此证书密码。
( 2 ) 找到安装 Tomcat 目录下该文件Server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port="8443" 标签,增加如下属性:

keystoreFile="/你的磁盘目录/your-name.jks"
keystorePass="证书解压密码"

完整的配置如下,其中port属性根据实际情况修改:

<Connector port="8443" protocol="HTTP/1.1"
    maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
    keystoreFile="/你的磁盘目录/your-name.jks"
    keystorePass="证书解压密码"
    clientAuth="false" sslProtocol="TLS" />

( 注意:不要直接拷贝所有配置,只需添加 keystoreFile,keystorePass,keystorePass等参数即可,其它参数请根据自己的实际情况修改 )

 在生产环境中,可以能有特殊的情况,如要保持原有端口生效的情况下,并443端口生效。我公司开始用的 haproxy做反向代理,后来用nginx 配https,便 443端口生效。也就是同时开启原

有的haproxy使原有的端口生效,ngix配的https的443端口同时也生效。也就是不同的端口代理到后端相同的端口。这样就能兼容原有端口的同时,也兼容了443端口。

posted @ 2016-12-28 11:46  bass  阅读(1272)  评论(0编辑  收藏  举报