【教程】如何申请 wosign 免费个人证书并应用到阿里云服务器上的 tomcat

本贴最后更新于 2877 天前,其中的信息可能已经渤澥桑田

0.拥有一个域名www.example.xxx并解析到阿里云服务器上

1.注册wosign账号

2.申请个人证书 :“https://buy.wosign.com/free/”

3.域名验证

之前wosign好像是需要手机号和域名注册人的信息,现在需要将一个文件上传至域名的根目录或者是使用域名邮箱进行验证,这里我们选择“上传文件至根目录”的方式。

上传文件至根目录后,即可进行验证。

但是阿里云并不允许用户直接通过域名访问未备案的服务器,所以首先我们得先“伪造”一个https的url出来。何为伪造?就是自己给自己颁发https证书,以暂时绕过阿里云的验证,但是这种通过“伪造”方式使用https访问的网站会被大部分浏览器拦截,原因是自己颁发给自己的证书被浏览器认为是“不安全的证书”。(所以我称其为“伪造”https)

具体过程就是:

ssh连接上服务器之后,选择一个目录,假定就是/root目录,在该目录下执行命令

keytool -genkey -alias tomcat -keyalg RSA

之后会提示让你输入秘钥库密码,这里假定是"password",再会要求输入一些信息,大概是单位名称省份城市国家之类的,可以随便输。之后会要求输入秘钥密码假定是"password"与秘钥库密码一致。

完成之后去到xxxx/tomcat/conf/server.xml启用 SSL HTTP/1.1 连接器(已有配置,去除注释即可),端口 改为443。

大概是这样的代码,去掉注释,修改端口就可以了

<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true" />

然后增加以下两项。修改完成后的应该是这样

<Connector port="443" protocol="HTTP/1.1" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/root/.keystore(这里是假定的目录)" keystorePass="password(这里是假定的密码)"/>

并且修改Connector为以下形式

<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
               connectionTimeout="20000"
               redirectPort="443(修改此处)" />

修改完成后,重启tomcat。

重启完成后,可以开始进行wosign的验证,应该一次就能通过。

4.下载证书文件

域名验证通过之后会让你设置证书的密码,这里假定是"PASSWORD"。设置完成后将wosign帮你打包好的文件下载下来并妥善保管。

5.设置服务器证书

将下载下来的证书文件解压,期间会让你输入解压密码,即刚才设置的证书的密码“PASSWORD”,解压完成后,将其中"for Tomcat.zip"解压,得到xxxxx.jks文件,将该.jks文件上传至第三部假定的目录(这里是/root)内。

网上有很多教程是说将tomcat的keystoreFile更改一下就可以使用https访问了,但是我最开始的时候怎么也设置不对,之后按照如下的办法才设置成功,这里分享给大家。

    i.查看一下证书库中的所有证书: keytool -list 输入秘钥库密码password(第2步设置的假定密码) 此时会显示出已有证书,如果每一步都按照我的教程做,会显示有一个名叫"tomcat"的证书。

    ii.导入.jks的证书到现有的证书库中:keytool -importkeystore -srckeystore www.mbaoceancontent.com.jks 这里会让你输入原有秘钥库的密码"password"(假定),jks秘钥库的密码"PASSWORD"(假定)

    iii.删除"tomcat"秘钥 :keytool -delete -alias tomcat ,输入口令"password"

    iiii.查询现有证书的名称:keytool -list 假定查询到的名称是"1"

    iiiii.更改现有证书的名称为"tomcat":keytool -changealias -alias 1 -destalias tomcat 输入口令"password"

    iiiiii.更改现有秘钥的秘钥口令 :keytool -keypasswd -alias tomcat 输入口令"password" 输入原秘钥口令"PASSWORD" 输入新秘钥口令"password"

之后,重启tomcat,即可安全无阻的访问https://www.example.xxx

 

至此,给服务器设置https访问就完成了。

 

  • 教程
    143 引用 • 594 回帖 • 8 关注
  • HTTP
    75 引用 • 128 回帖 • 1 关注
  • Tomcat

    Tomcat 最早是由 Sun Microsystems 开发的一个 Servlet 容器,在 1999 年被捐献给 ASF(Apache Software Foundation),隶属于 Jakarta 项目,现在已经独立为一个顶级项目。Tomcat 主要实现了 JavaEE 中的 Servlet、JSP 规范,同时也提供 HTTP 服务,是市场上非常流行的 Java Web 容器。

    162 引用 • 529 回帖 • 2 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...
  • zonghua

    是 是啊是啊

  • 其他回帖
  • zempty

    早起的虫儿被鸟七~🐝

  • zjhch123 1
    作者

    @88250 yeah!

  • 88250

    谢谢分享~

    还是加个 [NGINX] 反代简单点,哈哈

zjhch123
未来的事无人知晓,所以才有无穷可能。 杭州

推荐标签 标签

  • Latke

    Latke 是一款以 JSON 为主的 Java Web 框架。

    70 引用 • 533 回帖 • 759 关注
  • Ubuntu

    Ubuntu(友帮拓、优般图、乌班图)是一个以桌面应用为主的 Linux 操作系统,其名称来自非洲南部祖鲁语或豪萨语的“ubuntu”一词,意思是“人性”、“我的存在是因为大家的存在”,是非洲传统的一种价值观,类似华人社会的“仁爱”思想。Ubuntu 的目标在于为一般用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。

    123 引用 • 168 回帖 • 1 关注
  • SendCloud

    SendCloud 由搜狐武汉研发中心孵化的项目,是致力于为开发者提供高质量的触发邮件服务的云端邮件发送平台,为开发者提供便利的 API 接口来调用服务,让邮件准确迅速到达用户收件箱并获得强大的追踪数据。

    2 引用 • 8 回帖 • 465 关注
  • OpenStack

    OpenStack 是一个云操作系统,通过数据中心可控制大型的计算、存储、网络等资源池。所有的管理通过前端界面管理员就可以完成,同样也可以通过 Web 接口让最终用户部署资源。

    10 引用 • 1 关注
  • 锤子科技

    锤子科技(Smartisan)成立于 2012 年 5 月,是一家制造移动互联网终端设备的公司,公司的使命是用完美主义的工匠精神,打造用户体验一流的数码消费类产品(智能手机为主),改善人们的生活质量。

    4 引用 • 31 回帖 • 2 关注
  • 周末

    星期六到星期天晚,实行五天工作制后,指每周的最后两天。再过几年可能就是三天了。

    14 引用 • 297 回帖
  • Eclipse

    Eclipse 是一个开放源代码的、基于 Java 的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

    75 引用 • 258 回帖 • 634 关注
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    165 引用 • 594 回帖 • 1 关注
  • RESTful

    一种软件架构设计风格而不是标准,提供了一组设计原则和约束条件,主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

    30 引用 • 114 回帖
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    88 引用 • 1234 回帖 • 425 关注
  • 黑曜石

    黑曜石是一款强大的知识库工具,支持本地 Markdown 文件编辑,支持双向链接和关系图。

    A second brain, for you, forever.

    11 引用 • 90 回帖 • 1 关注
  • Sublime

    Sublime Text 是一款可以用来写代码、写文章的文本编辑器。支持代码高亮、自动完成,还支持通过插件进行扩展。

    10 引用 • 5 回帖 • 2 关注
  • 电影

    这是一个不能说的秘密。

    120 引用 • 598 回帖
  • wolai

    我来 wolai:不仅仅是未来的云端笔记!

    2 引用 • 14 回帖 • 1 关注
  • uTools

    uTools 是一个极简、插件化、跨平台的现代桌面软件。通过自由选配丰富的插件,打造你得心应手的工具集合。

    5 引用 • 13 回帖 • 3 关注
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 268 回帖 • 88 关注
  • CodeMirror
    1 引用 • 2 回帖 • 130 关注
  • Elasticsearch

    Elasticsearch 是一个基于 Lucene 的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于 RESTful 接口。Elasticsearch 是用 Java 开发的,并作为 Apache 许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

    116 引用 • 99 回帖 • 235 关注
  • CongSec

    本标签主要用于分享网络空间安全专业的学习笔记

    6 引用 • 1 回帖 • 1 关注
  • 外包

    有空闲时间是接外包好呢还是学习好呢?

    26 引用 • 232 回帖
  • B3log

    B3log 是一个开源组织,名字来源于“Bulletin Board Blog”缩写,目标是将独立博客与论坛结合,形成一种新的网络社区体验,详细请看 B3log 构思。目前 B3log 已经开源了多款产品:SymSoloVditor思源笔记

    1081 引用 • 3459 回帖 • 232 关注
  • Swagger

    Swagger 是一款非常流行的 API 开发工具,它遵循 OpenAPI Specification(这是一种通用的、和编程语言无关的 API 描述规范)。Swagger 贯穿整个 API 生命周期,如 API 的设计、编写文档、测试和部署。

    26 引用 • 35 回帖 • 3 关注
  • TGIF

    Thank God It's Friday! 感谢老天,总算到星期五啦!

    287 引用 • 4484 回帖 • 669 关注
  • 安全

    安全永远都不是一个小问题。

    200 引用 • 816 回帖
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 370 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    58 引用 • 22 回帖 • 3 关注
  • TextBundle

    TextBundle 文件格式旨在应用程序之间交换 Markdown 或 Fountain 之类的纯文本文件时,提供更无缝的用户体验。

    1 引用 • 2 回帖 • 47 关注