基于公网(外网)IP免费申请SSL(HTTPS)证书的方法(无需域名)
一、https的简单介绍
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL(Secure Socket Layer)。
SSL协议提供的服务主要有:
- 认证用户和服务器,确保数据发送到正确的客户机和服务器
- 加密数据以防止数据中途被窃取
- 维护数据的完整性,确保数据在传输过程中不被改变
关于https的介绍,网上有很多更详细更专业的资料,在此只作简单介绍,让大家有一些概念性的了解,并最终完成android端和服务器端的https的实现。
二、SSL证书作用
SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。
SSL证书的两大作用:数据加密和身份认证。
SSL证书遵守SSL协议,通过在客户端浏览器和Web服务器之间建立一条SSL安全通道 。
一个有效、可信的 SSL 数字证书包括一个公共密钥和一个私用密钥。公共密钥用于加密信息,私用密钥用于解译加密的信息。因此,浏览器指向一个安全域时,SSL 将同步确认服务器和客户端,并创建一种加密方式和一个唯一的会话密钥。它们可以启动一个保证消息的隐私性和完整性的安全会话。
SSL证书可以实现网站HTTPS加密,适用于各种WEB项目及加密接口,SSL证书可以防止网站劫持及保护数据加密传输,可有效保护网络安全。
IP类型的SSL证书主要应用项目API接口或者ERP、OA、远程视频、VPN等请求加密及数据保护,有利于IP传输得到安全。
三、IP SSL证书
IP SSL证书可以解决企事单位的公网IP地址进行HTTPS加密请求。反正IP被劫持或者数据被中间窃取,使用IP地址SSL证书配置IP SSL证书可以有效的避免这类攻击行为。IP SSL证书给企事单位在线WEB项目站点得到了安全加密保护的有效保障。而且对于公网IP下存在很多端口应用场景一本IP证书就可以全部覆盖保护。IP SSL证书签发的速度也很快,认证一分钟就可以完成。企事单位实名类型的IP证书也只需当天就可以申请SSL证书。
四、关于自签名SSL证书
相对自签证书的自己给自己颁证,由权威的证书授权机构(Certificate Authority)颁发的签名证书,我们称之为:CA证书
CA证书保证书持有者的身份和公钥的拥有权,浏览器对CA证书是信任的。
五、注意事项
IP SSL证书分为单IP SSL证书和多IP SSL证书。普通的单IP SSL证书,只能保护一个IP SSL证书。如果存在很多IP地址需要SSL证书,那么着需要多IP类型的SSL证书,最大一本证书可以保护250个IP地址。
IP地址不支持通配符,也不支持IP段落概括性方式申请,申请IP SSL证书必须明确需要指定的独立IP。
IP类型的SSL证书,不支持EV类型申请,目前只能DV或者OV两种IP SSL证书。
申请IP SSL证书必须是公网独立IP地址,并且申请者的IP地址开放80或者443端口才可以的。
六、申请IP SSL证书整体流程
准备公网IP地址,在线提交给Gworg进行申请。申请者的IP地址确保对外广域网可以访问。
几分钟就可以确定认证后就可以获取SSL证书。
拿到IP SSL证书里面包括常见的服务器环境规格的SSL证书,可以直接配置到项目环境,不需要另外转换。
IP SSL证书企事单位申请IP SSL证书的时候请确定好域名与企业名称进行实名认证审核。
目前申请IP SSL证书效率上还是比较高的,最快的IP SSL证书一分钟就可以完成
七、申请公网IP的SSL证书的方法
(一)、手动申请的方法
进入到ZeroSSL官网(网址:https://zerossl.com), 注册一个账号,然后点击免费 SSL 证书申请。
填写你的IP地址,然后选择免费SSL证书时长。
选择自动生成CSR
验证域名,ZeroSSL免费SSL证书提供了两种域名验证方式,最简单的就是Web验证,但是前提是你要让你的IP地址实现Web访问。如果没有,你可以选择使用域名DNS添加TXT记录验证。
选择网站Web访问的话,直接下载验证文件,然后上传到IP地址默认的Web目录下,用你的浏览器打开IP,保证可以访问到验证文件。
最后,回到ZeroSSL验证页面,点击完成验证。
下载证书文件,ZeroSSL证书验证成功后,你就可以下载证书文件了。ZeroSSL SSL证书提供了多种形式,包括了Nginx、Apache等。
(二)、在线自动生成ssl的方法
1、 生成网址:https://www.lddgo.net/encrypt/ssl (推荐)
在线免费SSL证书生成器,在线生成用于学习测试使用的SSL域名证书,IP证书。您可以使用生成的证书发布HTTPS的站点。
SSL证书生成-使用说明:
- 输入域名或者IP,生成对应的域名证书或者IP证书。你也可以生成通配符证书, 比如*.example.com。
- 算法:选择加密算法,支持RSA和ECDSA两种证书算法。一般使用RSA算法。
- 存储类型:当你下载证书时,证书会使用PKCS12格式存储,你需要输入存储密码和证书别名。默认的证书存储密码为lddgo.net。
- 下载:一个zip压缩文件,其中包含四个文件:
cert.pem:证书,pem格式。
private.key:私钥,pem格式。
generate.cer:证书,cer格式。
generate.P12:PKCS12格式存储的证书,包含私钥。
当你使用nginx部署网站时,使用cert.pem和private.key两个文件即可。 如果你需要其他格式的证书,可以使用openssl等工具转换。
2、 其他网址推荐:
https://freessl.cn/ (推荐)
https://www.pianyissl.com/
https://certbot.eff.org/
推荐第一个,第一个,因为太强了,差不多五分钟搞定,第一个生成工具的使用过程如下:
先注册登录https://freessl.cn/
然后在下图地址中输入自己的域名
选择一键申请,点击创建
会让下载一个软件,下载即可,下载完毕后重新点击创建。
进入该软件,配置DNS解析商,以腾讯云为例,需要SecretId
新建密钥后填入即可,然后点击一键生成就行了。
需要注意的是,使用一键部署(Nginx),虽然显示成功,但是实际上没有成功。(不过的确通过一键部署功能将证书都上传到了服务器指定位置)
需要手动修改nginx配置如下:
1 | server { |
打开浏览器,用https://能够正常访问