众所周知,在HTTPS页面请求HTTP资料的时候,现代浏览器会拦截,提示用户是否继续,或者直接拦截,提示都不出来。

最近给自己做了个快速书签工具,点击书签就直接把书签发送到服务器地址,然后保存到我的网站中。

一开始一切都挺正常的,不过遇到了https的网站的时候,就跪掉了。

开始的时候看到HTTPS证书是收费的,想想还是算了,反正凑合能用就是。前几天偶尔看到有一个免费申请HTTPS的开源软件,喵了一下看起来还不错,这几天有空了立马开干。下面有一个教程,我申请证书差不多就是按照这个来处理的。

用Let’s Encrypt获取免费证书

关于这个Let’s Encrypt,维基百科是这样介绍的:

Let’s Encrypt 是一个将于2015年末推出的数字证书认证机构,将通过旨在消除当前手动创建和安装证书的复杂过程的自动化流程,为安全网站提供免费的SSL/TLS证书。 Let’s Encrypt 是由互联网安全研究小组(ISRG,一个公益组织)提供的服务。主要赞助商包括电子前哨基金会,Mozilla基金会,Akamai以及思科。2015年4月9日,ISRG与Linux基金会宣布合作。用以实现这一新的数字证书认证机构的协议被称为自动证书管理环境(ACME)。 GitHub上有这一规范的草案,且提案的一个版本已作为一个Internet草案发布。Let’s Encrypt 宣称这一过程将十分简单、自动化并且免费。 2015年8月7日,该服务更新其推出计划,预计将在2015年9月7日当周某时发布首个证书,随后向列入白名单的域名发行少量证书并逐渐扩大发行。若一切按计划进行,该服务预计将在2015年11月16日当周某时全面开始提供.

整个项目在Github有代码,主要是通过客户端来为我们的网站生成https证书。
首先我们先下载客户端,如下:

1
git clone https://github.com/letsencrypt/letsencrypt.git

接着进入这个仓库内,执行下面代码:

1
./letsencrypt-auto certonly -a
webroot\ --webroot-path 网站所在路径(如:/var/www/web/) \
-d 你的域名(如:test.online) -d www.你的域名(如ww.test.online)

这里需要注意的事,我这里为了排版,给上面的命令加了换行,运行这个命令的时候记得把换行符去掉。
换行符在webroot、-d 前面各有一个。

一切顺利的话,我们在/etc/letsencrypt/live/域名/这个目录下能看到四个文件,分别是:

  1. 域名证书文件
  2. 签发域名证书的证书链文件
  3. 域名证书+证书链文件
  4. 私钥文件

如下图:
letsencrypt文件

接着就是为网站设置证书了。

Jexus设置HTTPS要更改jws.conf文档以及网站的配置文档。

操作步骤如下:

  1. 修改jws.conf
    进入Jexus文件夹中,打开 “jws.conf”,添加下面两句:
1
CertificateFile    = /etc/letsencrypt/live/域名/fullchain.pem
CertificateKeyFile = /etc/letsencrypt/live/域名/privkey.pem

修改之后效果图如下:
图片描述

  1. 开启网站的HTTPS功能

进入siteconf/文件夹,找到对应的网站conf文件,

把网站服务端口改为443:
port=443

启用https:
UseHttps=true

修改之后的效果图如下:
图片描述

然后重启jexus即可。

完了之后,通过HTTPS即可访问。

最后上一个HTTPS证书的图证明一下这个是可行的。
图片描述

撒花,下次再见。

Jexus支持HTTPS协议的更多相关文章

  1. loadrunner支持https协议的操作方法-经验总结

    问题:用户portal支持https协议,用loadrunner录制登陆脚本时发现未录制到用户名和密码 录制到的脚本如下: login() { lr_think_time(10); web_url(& ...

  2. 1、大部分社交平台接口不支持https协议。

    参考文献来自:http://wiki.mob.com/ios9-%E5%AF%B9sharesdk%E7%9A%84%E5%BD%B1%E5%93%8D%EF%BC%88%E9%80%82%E9%85 ...

  3. CentOS6.5 下在Nginx中添加SSL证书以支持HTTPS协议访问

    参考文献: 1. NginxV1.8.0安装与配置 2. CentOS下在Nginx中添加SSL证书以支持HTTPS协议访问 3. nginx配置ssl证书的方法 4.nginx强制使用https访问 ...

  4. Python内置的urllib模块不支持https协议的解决办法

    Django站点使用django_cas接入SSO(单点登录系统),配置完成后登录,抛出“urlopen error unknown url type: https”异常.寻根朔源发现是python内 ...

  5. curl提示不支持https协议解决方法

    根据网上的资料,这个问题的原因是因为在安装curl时使用默认安装,但是默认安装并不支持https协议 简单粗暴的办法就是,卸载重新安装curl(有一种方法是重新编译就可以了,然后使用编译后的可执行文件 ...

  6. Nginx配置支持https协议-应用实践

    Nginx配置支持https协议-应用实践 https简介 HTTPS 是运行在 TLS/SSL 之上的 HTTP,与普通的 HTTP 相比,在数据传输的安全性上有很大的提升. TLS是传输层安全协议 ...

  7. centos7.3下curl支持https协议

    1 由于自己的curl是默认安装的,查看了下 不支持https协议 [root@izwz90bp6do7s3cr45cw6az ~]# curl --version curl (x86_64-redh ...

  8. Ubuntu+NDK编译openssl(为了Android上使用libcurl且支持HTTPS协议)

    为了Android上使用libcurl且支持HTTPS协议,需要依赖openssl,因此先来了解一下如何编译OpenSSL1.编译ARM下的共享库(默认的)我使用的是guardianproject的o ...

  9. 【原】cocos2d-x 2.0.4 不支持https协议 CURLE_UNSUPPORTED_PROTOCOL

    我们项目组用的cocos2d-x版本还比较老,各种好的功能不能用. 今天就让我遇到一个问题,使用CCHttpClient发送http请求的时候,https协议的不支持,返回失败信息如下 errorco ...

随机推荐

  1. LeetCodeOJ刷题之12【Integer to Roman】

    Integer to Roman Given an integer, convert it to a roman numeral. Input is guaranteed to be within t ...

  2. Android(java)学习笔记30:泛型接口的概述和使用

    1. 泛型接口的概述和使用: package cn.itcast_06; /* * 泛型接口:把泛型定义在接口上 */ public interface Inter<T> { public ...

  3. 写一个简单的shellcode

    0x00 前言 漏洞利用中必不可缺的部分就是shellcode,不会编写shellcode和咸鱼有什么区别,跳出咸鱼第一步. 0x01 系统调用 通过系统调用execve函数返回shell C语言实现 ...

  4. 【luogu P2065 [TJOI2011]卡片】 假题解

    题目链接:https://www.luogu.org/problemnew/show/P2065 辣鸡匈牙利,没有优化贼鸡儿慢 // luogu-judger-enable-o2 #include & ...

  5. 10474 - Where is the Marble?(模拟)

    传送门: UVa10474 - Where is the Marble? Raju and Meena love to play with Marbles. They have got a lot o ...

  6. 提高mapreduce性能的七点建议

    Cloudera提供给客户的服务内容之一就是调整和优化MapReduce job执行性能.MapReduce和HDFS组成一个复杂的分布式系统,并且它们运行着各式各样用户的代码,这样导致没有一个快速有 ...

  7. js判断手机登陆用户

    uaredirect.js function uaredirect(f){try{if(document.getElementById("bdmark")!=null){retur ...

  8. LeetCode8.字符串转换整数(atoi) JavaScript

    请你来实现一个 atoi 函数,使其能将字符串转换成整数. 首先,该函数会根据需要丢弃无用的开头空格字符,直到寻找到第一个非空格的字符为止. 当我们寻找到的第一个非空字符为正或者负号时,则将该符号与之 ...

  9. Redis分布式锁的正确实现方式(Java版)

    前言 分布式锁一般有三种实现方式:1. 数据库乐观锁:2. 基于Redis的分布式锁:3. 基于ZooKeeper的分布式锁.本篇博客将介绍第二种方式,基于Redis实现分布式锁.虽然网上已经有各种介 ...

  10. ATK 设计框架辅助工具-代码生成器

    在 ATK框架代码中的示例,是用代码生成器生成的. 示例中有三个项目DemoTools.BLL 业务层,DemoTools.UIServer 前端服务层,DemoTools.WebUI 前端是ASP. ...