首页 > 其他分享 >自签ssl 证书工具-mkcert

自签ssl 证书工具-mkcert

时间:2023-06-14 09:22:06浏览次数:42  
标签:自签 证书 生成 ssl 域名 mkcert SSL

自签ssl 证书工具-mkcert

一、场景

随着SSL的越来越普及,目前大部分生产环境都已经使用SSL,SSL证书一般有如下方法获取:SSL服务商购买、免费SSL服务商通过HTTP验证/API验证、自签SSL证书。SSL服务商购买后一般需要域名邮箱或者域名持有人邮箱验证,而免费SSL服务商一般需要通过HTTP验证或API方式生成DNS记录进行验证。能不花钱的咱尽量不花,但是免费的SSL证书需要HTTP验证,在本地或者局域网内这个显然时无法进行,当然API方式是一个不错的方法,生成的SSL证书既是信任的还免费,但是不适应于所有情况。自签可以生成任意域名或IP的SSL证书,只不过是不信任的,需要自行将该CA加入信任。自签SSL一般需要使用openssl命令步骤比较繁琐,今天我们借助mkcert工具来一键生成SSL证书并且信任该CA。

二、安装使用

mkcert 是一个用于生成本地自签SSL证书的工具,基于Golang开发,可跨平台使用,不需要配置自动信任CA,支持单域名、多域名和IP。

Windows下安装mkcert

  • 下载

下载链接:https://github.com/FiloSottile/mkcert/releaseshttps://dl.filippo.io/mkcert/latest?for=windows/amd64 下载时注意你自己机器架构类型,大部分情况下win系统为amd64,极少部分为arm64。

  • 安装

键盘按Win键+R键,输入cmd 回车,找到下载的mkcert,将mkcert的文件拖入命令提示符的窗口中,并添加上 -install 参数,回车。

  • 生成ssl证书

和前面安装mkcert的步骤一样,将 -install 参数更改为你要生成SSL证书的域名或IP。

  • 证书结果

回车后就会在mkcert文件所在目录生成SSL证书,一个命令生成的这些域名或IP是在一张SSL证书里面。

生成的SSL证书文件名为:./example.com+2.pem,key文件为:./example.com+2-key.pem

Linux下安装mkcert

  • 下载

下载链接:https://github.com/FiloSottile/mkcert/releaseshttps://dl.filippo.io/mkcert/latest?for=linux/amd64 下载时注意你自己机器架构类型,大部分情况下linux系统为amd64,极少部分为arm64。

打开终端,输入如下命令下载mkcert:

wget "https://dl.filippo.io/mkcert/latest?for=linux/amd64" -O mkcert && chmod +x mkcert
  • 安装

mkcert需要依赖certutil,所以安装前需要先安装依赖包

CentOS/RHEL/Fedora/Alma/RockyDebian/Ubuntu/Deepin

apt-get install -y libnss3-tools

./mkcert -install

生成SSL证书的方法和Windows系统上时一样的,将前面 -install 参数替换为要生成SSL证书的域名或者IP就可以。

./mkcert example.com 10.10.10.1 127.0.0.1 localhost
  • 证书结果

生成的SSL证书,在当前mkcert文件所在的目录下,一个命令生成的这些域名或IP是在一张SSL证书里面。

生成的SSL证书在当前目录下,文件名为:example.com+2.pem,key文件为:example.com+2-key.pem

ssl证书使用

接下来就是最简单的将SSL部署到Nginx、Apache等web服务器上了,如LNMP一键安装包的话直接 lnmp vhost add 或 lnmp ssl add 添加上就可以了

作者:苏和成

标签:自签,证书,生成,ssl,域名,mkcert,SSL
From: https://www.cnblogs.com/DTCLOUD/p/17479227.html

相关文章

  • 解决:pip is configured with locations that require TLS/SSL
     在使用pip进行软件包安装的时候出现问题:WARNING:pipisconfiguredwithlocationsthatrequireTLS/SSL,howeverthesslmoduleinPythonisnotavailable.解决:mkdir-p~/.pipvim~/.pip/pip.conf 然后输入内容:[global]index-url=http://mirrors.aliyun.......
  • Elasticsearch自签证书
    ****如果方式适合安装时没有配置及证书相关配置,而安装后进行的证书自签一、自签证书1、进入工作目录进入容器,bin目录下有生成证书的脚本,路径下文件展示如下(我这里是以docker容器部署的模式演示的)[root@363474ada611elasticsearch]#llbin/total19604-rwxr-xr-x.1......
  • 解压gzip数据流 和 file_get_contents()函数支持SSL错误和header
    file_get_contents()函数的相关参数,支持SSL错误和header $options=array("ssl"=>array("verify_peer"=>false,"verify_peer_name"=>false,), "http"=>array('timeout......
  • nginx-ssl
    阿里云sslhttps://cloud.tencent.com/developer/article/1444888?from=15425&areaSource=102001.1&traceId=hr6wuqWG00xJ9twXuLoOAapkaddopenssl-devopensslmkdir/usr/local/nginx/conf/sslcd/usr/local/nginx/conf/sslopensslgenrsa-outmy.key-des31024......
  • Rocky Linux 安装 OpenSSL 1.1.1
    一、概要1.环境(1)RockyLinux9.1(2)OpenSSL1.1.1u2.背景总所周知,RockyLinux9.1自带的OpenSSL是3.0.7版本(如下图),但是有些程序依然依赖OpenSSL1.1.x版本,这就要求我们掌握在同一个主机下同时安装两个不同版本的OpenSSL方法。二、安装与配置1.依赖(1)更新s......
  • 【解决git报错 10054】OpenSSL SSL_read: Connection was reset, errno 10054
    使用git获取github上代码时报错:OpenSSLSSL_read:Connectionwasreset,errno10054(此时又必须开着vpn才能访问到github)参考网上的回答,成功解决问题:修改设置,解除ssl验证gitconfig--globalhttp.sslVerify"false"此时,再执行git操作即可。32656@ThinkPad-WeiMINGW64/d/01Te......
  • 【解决git报错 10054】OpenSSL SSL_read: Connection was reset, errno 10054
    使用git获取github上代码时报错:OpenSSLSSL_read:Connectionwasreset,errno10054(此时又必须开着vpn才能访问到github)参考网上的回答,成功解决问题:修改设置,解除ssl验证gitconfig--globalhttp.sslVerify"false"此时,再执行git操作即可。32656@ThinkPad-WeiMINGW64/d/01Te......
  • Windows证书管理器 && SSL certification && WSL-Docker: curl: (60) SSL certificat
    深入浅出certmgr——Windows证书管理器https://www.fke6.com/html/91605.html计算机安全是当前社会的一个重要议题,证书是一种重要的安全机制,负责证明数据、软件或者人的身份和信誉。certmgr(即“证书管理器”)是Windows中专门用于证书管理的工具。本文将从多个方面对certmgr进行深......
  • 1 asn.1 编码和工具(多找) 2 BER和DER编码 (openssl应用举例)
    asn.1编码和工具(多找)BER和DER编码(openssl应用举例)asn.1编码和工具在ASN.1编码方面,有许多工具可供使用,例如OpenSSL、GnuTLS、Wireshark等。这些工具可以用于生成ASN.1描述的数据结构、将ASN.1数据结构编码成二进制格式、解码ASN.1数据结构等。此外,还有一些专门用于ASN.1编......
  • 3. 密码算法和密码消息的ASN.1描述(openssl应用举例)
    密码算法和密码消息的ASN.1描述(openssl应用举例)目录密码算法的描述密码算法的ASN.1格式密码算法的OID密码消息的描述密码消息的ASN.1描述通用内容消息的格式Data的格式SignedData的格式SignerInfo的格式EnvelopedData的格式SignedAndEnvelopeDdata的格式Dige......