小绿🔒https的web容器配置

学习配置https,以及一些服务器安装部署流程,在tomcat和nginx中安装配置https。

[toc]

一. 阿里云免费证书的申请下载

参考:https://common-buy.aliyun.com/?spm=5176.2020520163.cas.85.3b102b7arJW2wy&commodityCode=cas#/buy 传送门
购买成功后,按照对应流程下载配置。
相关配置参考:https://help.aliyun.com/video_detail/54217.html?spm=5176.2020520163.cas.80.3b102b7arJW2wy 传送门

二. 配置注意问题

  1. 端口号的更改,https默认的端口号为443.
  2. 证书路径的修改
  3. 协议的修改
  4. 证书密码的修改

blog相关参考: http://imtianx.cn/2017/09/22/tomcat_set_https/ 传送门

三. 防火墙端口的开放

vim /etc/sysconfig/iptables

在文件中添加:

-A INPUT -p tcp -m state –state NEW -m tcp –dport 443 -j ACCEPT

当然,也可以在阿里云的后台管理系统,去设置安全组策略来开放端口。

四. 测试

重启tomcat,使用https://willhappy.cn测试。

五. 番外(nginx + tomcat + https)

上面说了关于web项目单独在tomcat容器中配置https, 但是,现在现在大部企业都是采用nginx作为反向代理服务器,tomcat只做数据服务的提供者,所以,简单再说下关于nginx的https证书安装和配置。

1. 关于nginx安装

网上已经相当多了,可参考传送门.

2. nginx配置https证书

类似与tomcat的https配置,参考传送门, 视频参考传送门.
我的配置文件nginx.conf

server {
    listen 443;
    server_name willhappy.cn;   #拦截的域名
    ssl on;
    root html;
    index index.html index.htm;
    ssl_certificate   cert/XX.pem;  #你自己申请的证书文件
    ssl_certificate_key  cert/XX.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 / {
        proxy_pass http://whome;    #提供数据服务的服务器
        proxy_set_header Host $http_host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

upstream whome{
    server localhost:8080;
}

配置tomcat的server.xml可直接通过ip进行项目的访问

<Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true"
            xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="/usr/local/tomcat/webapps/whome" reloadable="true" />
</Host>

3. 启动测试

启动nginx,可能会出现错误:

[emerg] 10464#0: unknown directive “ssl” in /usr/local/nginx-0.6.32/conf/nginx.conf:74

这是因为没有将ssl模块编译进nginx,在configure的时候加上“–with-http_ssl_module”即可

[root@localhost nginx-1.4.4]# ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --with-http_ssl_module

nginx安装包中重新配置,编译。
再次通过https://willhappy.cn,访问测试,配置成功。

注意:我们只能通过https://willhappy.cn 方式访问才是安全访问,通过willhappy.cn还是普通的http访问,所以,要通过两种方式都可以安全访问,还需要配置一下。

参考传送门,未做测试。可以自己尝试一下,嘻嘻


   转载规则


《小绿🔒https的web容器配置》 Will 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
git养成日记 git养成日记
[toc] 前言基础入门,参考廖雪峰老师的git教程 一. git日常操作 git add fileName;git commit -m ‘提交说明’;git push -u;//提交到githubgit status -s//查看文件状
2018-04-26
下一篇 
centos7.0搭建web环境的坎 centos7.0搭建web环境的坎
为了接下来能活的更好,再次埋头扎下了技术坑,一步一步来了,先从搭建生产环境走起,centos7.0 + tomcat8.5 + jdk1.8 + mysql5.7吧,简单的走流程的东西就不写了,只写一下在安装过程中走的坑,haha。 [t
2017-12-23
  目录