CentOS7下Apache及Tomcat开启SSL
参考:
- http://www.bootf.com/563.html
- http://www.sunjianhe.com/?p=1238
- http://www.fwolf.com/blog/post/405
- http://httpd.apache.org/docs/2.4/ssl/ssl_howto.html
安装:
yum install -y openssl #使用openssl可手动创建证书 yum install -y httpd yum install -y mod_ssl
#防火墙打开80、443端口,然后重启 firewall-cmd --zone=public --add-port=80/tcp --permanent firewall-cmd --zone=public --add-port=443/tcp --permanent firewall-cmd --reload
#Apache开启
systemctl enable httpd systemctl start httpd
强制HTTP-->HTTPS:
#vim /etc/httpd/conf/httpd.conf 添加如下内容
RewriteEngine on RewriteCond %{SERVER_PORT} !^443$ #另一种写法:RewriteCond %{SERVER_PORT} 80 RewriteRule ^(.*)$ https://%{SERVER_NAME}%{REQUEST_URI} [R=301,L] #301表示永久移走
【Tomcat开启SSL】
http://sanketdangi.com/post/43734145363/secure-tomcat-through-apache-using-ajp
#vi /etc/httpd/conf.d/ssl.conf 添加如下内容 application1,application2代表tomcat应用,请替换 ProxyPass /application1 ajp://127.0.0.1/application1 ProxyPass /application2 ajp://127.0.0.1/application2 ProxyPassReverse /application1 ajp://127.0.0.1/application1 ProxyPassReverse /application2 ajp://127.0.0.1/application2 <Proxy *> AddDefaultCharset off Order deny,allow Allow from all </Proxy>
#vim /usr/share/tomcat/conf/server.xml <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" /> || \ / <Connector port="8009" protocol="AJP/1.3" redirectPort="8080" />
[work]
http://blog.csdn.net/lifetragedy/article/details/7699236
[解决[Errno 1] _ssl.c:504: error:14090086:SSL routines:SSL3_GET_SERVER_CERTIFICATE:certificate verify failed]
原因:requests模块验证证书,自签名证书验证失败。
http://stackoverflow.com/questions/10667960/python-requests-throwing-up-sslerror
http://stackoverflow.com/questions/18999517/python-requests-certificate-verify-failed
http://www.python-requests.org/en/latest/user/advanced/
https://www.digicert.com/ssl-support/pem-ssl-creation.htm
http://viraj-workstuff.blogspot.jp/2011/07/python-httplib2-certificate-verify.html
方案一:
requests.get(url,verify=False)
方案二:
复制pem文件内容至/usr/lib/python2.7/site-packages/requests/cacert.pem