自签名免费(SSL)私有证书

这篇具有很好参考价值的文章主要介绍了自签名免费(SSL)私有证书。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

(一)生成加密证书

1,生成加密自签名(SSL)证书

mkdir /data/ssls/www.haha.com
openssl req -new -x509 -newkey rsa:2048 -keyout /data/ssls/www.haha.com/server.key -out /data/ssls/www.haha.com/server.crt

自签名免费(SSL)私有证书

注意:执行后需要输入密码,然后依次输入国家,地区,城市,组织,组织单位,Common Name和Email。其中Common Name,可以写自己的名字或者域名,如果要支持https,Common Name应该与域名保持一致,否则会引起浏览器警告。

(二)生成不加密证书

1,使用openssl工具生成一个RSA私钥

openssl genrsa -des3 -out /data/ssls/www.haha.com/server.key 2048

自签名免费(SSL)私有证书

注意:生成rsa私钥,des3算法,2048位强度,server.key是秘钥文件名,生成私钥,会要求你输入这个key文件的密码需要提供一个至少4位的密码,由于生成时候必须输入密码。你可以输入后,后面再删掉(因为以后要给nginx使用。每次reload nginx配置时候都要你验证这个PAM密码的)。

2,删除密码,重命名文件,导出key内容

mv /data/ssls/www.haha.com/server.key /data/ssls/www.haha.com/server.key.org(或cp /data/server.key /data/server.key.org)
openssl rsa -in /data/ssls/www.haha.com/server.key.org -out /data/ssls/www.haha.com/server.key

注意:导出key内容时候需要输入设置的密码。

3,生成CSR(证书签名请求)

使用生成的私钥(key文件)生成证书请求csr文件

openssl req -new -key /data/ssls/www.haha.com/server.key -out /data/ssls/www.haha.com/server.csr

自签名免费(SSL)私有证书

注意:依次输入国家,地区,城市,组织,组织单位,Common Name和Email。其中Common Name,可以写自己的名字或者域名,如果要支持https,Common Name应该与域名保持一致,否则会引起浏览器警告。

4,生成自签名crt证书

根据key和csr这2个文件生成crt证书文件

openssl x509 -req -days 3650 -in /data/ssls/www.haha.com/server.csr -signkey /data/ssls/www.haha.com/server.key -out /data/ssls/www.haha.com/server.crt

自签名免费(SSL)私有证书

(三)添加证书到受信任的存储路径

1,下载证书到本地

自签名免费(SSL)私有证书

2,win + r 打开mmc进入控制台1

自签名免费(SSL)私有证书自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
注意:导入成功后记得在本机hosts文件中添加domain ip映射后浏览器访问。

EDN:内容参考

Liunx环境下生成自签名免费(SSL)私有证书

(四)解决不安全告警的问题

1,背景描述:

遇到需要从http跨协议访问https的情况,此时就需要对要访问的https网址生成自签名证书,但是在谷歌浏览器中会报不安全的告警,必须手动操作下才能最终访问到https网址,很是麻烦

2,解决方法:

1.使用指定-subj “/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization”,生成根证书私钥和根证书 -keyout CA-private.key -out CA-certificate.crt
“/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization” (英文引号)

openssl req -x509 -nodes -days 3650 -newkey rsa:2048 -subj "/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization" -keyout CA-private.key -out CA-certificate.crt -reqexts v3_req -extensions v3_ca

2.生成自签名证书私钥 -out private.key

openssl genrsa -out private.key 2048

3.根据自签名证书私钥生成自签名证书申请文件 -out private.csr
“/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization/CN=ip/domain”

openssl req -new -key private.key -subj "/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization/CN=ip/domain" -sha256 -out private.csr

4.定义自签名证书扩展文件(解决chrome安全告警)。在默认情况下生成的证书一旦选择信任,在 Edge, Firefox 等浏览器都显示为安全,但是Chrome仍然会标记为不安全并警告拦截,
这是因为 Chrome 需要证书支持扩展 Subject Alternative Name, 因此生成时需要特别指定 SAN 扩展并添加相关参数,将下述内容放到一个文件中,命名为private.ext

[ req ]
default_bits        = 1024
distinguished_name  = req_distinguished_name
req_extensions      = san
extensions          = san
[ req_distinguished_name ]
countryName         = CN
stateOrProvinceName = Definesys
localityName        = Definesys
organizationName    = Definesys
[SAN]
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = IP:xxx.xxx.xxx.xxx

扩展多个域名和IP,编辑配置文件(跟本章内容无关,仅供参考)
证书转换参考1
证书转换参考2

# 定义输入用户信息选项的"特征名称"字段名,该扩展字段定义了多项用户信息。
distinguished_name = req_distinguished_name
# 生成自签名证书时要使用的证书扩展项字段名,该扩展字段定义了要加入到证书中的一系列扩展项。
x509_extensions = v3_req
# 如果设为no,那么 req 指令将直接从配置文件中读取证书字段的信息,而不提示用户输入。
prompt = no
[req_distinguished_name]
#国家代码,一般都是CN(大写)
C = CN
#省份
ST = Beijing
#城市
L = Beijing
#企业/单位名称
O = phpkoo
#企业部门
OU = phpkoo
#证书的主域名
CN = phpkoo.com
##### 要加入到证书请求中的一系列扩展项 #####
[v3_req]
keyUsage = critical, digitalSignature, keyAgreement
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[ alt_names ]
DNS.1=第一个域名
DNS.2=第二个域名
DNS.N=第N个域名
IP.1=第一个IP
IP.2=第二个IP
IP.N=第N个IP

5.根据根证书私钥及根证书-CA CA-certificate.crt -CAkey CA-private.key、自签名证书申请文件 -in private.csr、自签名证书扩展文件 -extfile private.ext,生成自签名证书 -out private.crt

openssl x509 -req -days 3650 -in private.csr -CA CA-certificate.crt -CAkey CA-private.key -CAcreateserial -sha256 -out private.crt -extfile private.ext -extensions SAN

自签名免费(SSL)私有证书

6,将根证书CA-certificate.crt下载在本地
自签名免费(SSL)私有证书
自签名免费(SSL)私有证书

自签名免费(SSL)私有证书
自签名免费(SSL)私有证书
选择确定
自签名免费(SSL)私有证书
访问
自签名免费(SSL)私有证书

3,解决linux curl提示证书安全问题。

方法:手动补齐证书链或将CA颁发机构加入信任列表解决该问题

cd /etc/pki/ca-trust/source/anchors/
cp /usr/local/openresty/nginx/ssl/CA-certificate.crt ./
update-ca-trust extract

EDN:内容参考

这里基本是搬运了。参考文章地址:
解决https网站通过nginx+openssl自签名证书访问,在谷歌浏览器报不安全告警的问题文章来源地址https://www.toymoban.com/news/detail-476493.html

到了这里,关于自签名免费(SSL)私有证书的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Nginx中实现自签名SSL证书生成与配置

    (1)生成私钥(Private Key):使用 OpenSSL 工具生成一个私钥文件,用于加密和解密传输的数据。 (2)生成证书签名请求(Certificate Signing Request,CSR):使用 OpenSSL 工具生成一个 CSR 文件,其中包含你的服务器公钥和相关的信息,以便用于生成证书。 (3)自签名证书生成:使

    2024年02月09日
    浏览(46)
  • Nginx中的SSL加密配置与证书生成

    目录 整体的操作流程 二、然后配置网络yum源 并mv CentOS-* backup挪动到上层目录中  三、在家目录下解压 文件,并查看  四、添加两种编译模块./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module 五、 显示少什么就 yum install (缺少的依赖的名称)-devel 下图为

    2024年02月05日
    浏览(45)
  • 【SSL】用Certbot生成免费HTTPS证书

    服务器:CentOS7.x 示例域名: www.example.com 域名对应的web站点目录: /usr/local/openresty/nginx/html 注意,示例域名 www.exanple.com在certbot机器上一定要解析在公网ip,而不是解析在内网ip,否则会报错无法解析: Let’s Encrypt需要验证网站的所有权才能颁发证书, 官方称之为challenge(挑战

    2024年02月08日
    浏览(60)
  • MAC: 自己制作https的ssl证书(自己签发免费ssl证书)(OPENSSL生成SSL自签证书)

    现在https大行其道, ssl又是必不可少的环节. 今天就教大家用开源工具openssl自己生成ssl证书的文件和私钥 MAC电脑 openssl工具自行搜索安装 1、终端执行命令 2、输入密码,这里会输入两次. 填写一样即可. 随意填写一个. 下一步就会删除这个密码 3、输入密码,这里会输入两次. 填写

    2024年04月14日
    浏览(77)
  • mac制作ssl证书|生成自签名证书,nodejs+express在mac上搭建https+wss(websocket)服务器

    mac 自带 openssl 所以没必要像 windows 一样先安装 openssl,直接生成即可 生成 key 让输入两次密码,随便,但是两次得是一样的 移除密码 生成 csr Country Name (2 letter code) [ 国家 ]:CN State or Province Name (full name) [ 省份 ]:Beijing Locality Name (eg, city) [ 城市 ]:Beijing Organization Name (eg, company)

    2024年02月09日
    浏览(45)
  • centos7 使用letsEncrypt certbot 生成免费的ssl证书 渐进学习

    1、我们将会使用 letsencrypt 证书颁发机构里的 certbot 客户端 certbot官网,国内也可访问 2、准备工作,这一步很重要。 你首先需要有一个解析通过了的域名,什么意思呢,解析过后的域名意味着域名就是ip地址 , ip地址就是域名,我们访问域名如同访问ip地址。 你的服务器需要

    2024年02月02日
    浏览(40)
  • 数字证书:签名证书&加密证书

    数字证书是基于认证机构(可信第三方)实现的,若不懂请复习PKI相关知识,我国为了加强对数据机密性的管控,采用双证书体系(签名证书加密证书),签名密钥对由用户自己产生,而加密密钥对则是由KMC(密钥管理中心)生成。 ———————————————————

    2024年02月08日
    浏览(43)
  • HTTPS加密原理,搞懂什么是对称加密、非对称加密、证书、数字签名

    众所周知,http协议是一种未加密的协议,我们未加密的数据,在传输的过程中会经过一个又一个的物理节点,如果被人通过抓包的方式拿到了我们的数据,将会给我们造成无法估量的损失。 为了解决解决这个问题,https应运而生。https通过加密的手段,保障的数据的安全性。

    2024年02月01日
    浏览(49)
  • 计算机网络实验之加密、数字签名与证书

    1.对称加密 2.散列函数 3.非对称加密 4.数字签名 5.证书 2.1 对称加密 (1)安装 OpenSSL:登录阿里云服务器,输入命令:“yum install openssl openssl-devel -y”,结果如下图所示,OpenSSL安装成功。 图2.1-1 安装OpenSSL (2)创建lx.txt文件:输入“vi lx.txt”命令创建 lx.txt 文件,并写入“世

    2024年02月08日
    浏览(80)
  • python实现对称加密、数字签名、数字证书颁发

    一.开发目的: 理解开源密码库实现的基本架构,熟悉对称算法的加解密函数封装与调用,并能能够利用开源设计接口进行二次封装,并实现一个界面友好,功能正确的采用对称算法的文件加解密工具。 二.开发环境: 硬件环境: 处理器:Intel®Core™i5-1035G1 CPU @1.00GHz 1.19GHz2

    2024年02月13日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包