openssl生成自签名证书

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

1、生成一个自定义的CA机构,生成证书

openssl req -x509 -sha256 -days 356 -nodes -newkey rsa:2048 -subj  "/CN=msetproot/C=CN/L=GuangDong" -keyout rootCA.key -out rootCA.crt

-subj “/CN=1111/C=CN/L=GuangDong”
1111替换为自定义的机构名称
会出现两个文件

rootCA.key
rootCA.crt CA机构的证书

2、创建服务器私钥

openssl genrsa -out server.key 2048

3、创建证书签名请求配置文件

cat > csr.conf <<EOF
[ req ]
default_bits = 2048
prompt = no
default_md = sha256
req_extensions = req_ext
distinguished_name = dn

[ dn ]
C = US
ST = California
L = San Fransisco
O = MLopsHub
OU = MlopsHub Dev
CN = 127.0.0.1

[ req_ext ]
subjectAltName = @alt_names

[ alt_names ]
IP.1 = 127.0.0.1

EOF

/*
创建一个csr.conf文件以包含生成 CSR 的所有信息。替换127.0.0.1为自己的域名或 IP 地址
也可以不指定配置文件,直接生成的时候手动填写
这些问题的答案并不重要.他们在查看证书时出现.但是我们几乎不需要查看证书

证数各参数含义如下:

C-----国家(Country Name)
ST----省份(State or Province Name)
L----城市(Locality Name)
O----公司(Organization Name)
OU----部门(Organizational Unit Name)
CN----产品名(Common Name)
emailAddress----邮箱(Email Address)

req_distinguished_name :根据情况进行修改

alt_names: 127.0.0.1修改为 服务器实际的 IP 或 DNS 地址,例如:IP.1 = 127.0.0.1,或 DNS.1 = broker.xxx.com
*/

4、使用服务器私钥生成证书签名请求 (CSR)

openssl req -new -key server.key -out server.csr -config csr.conf

5、使用根证书生成数字证书,先写好配置文件

//127.0.0.1修改为 EMQ X 服务器实际的 IP 或 DNS 地址,例如:IP.1 = 127.0.0.1,或
//DNS.1 = broker.xxx.com

cat > cert.conf <<EOF

authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
subjectAltName = @alt_names

[alt_names]
IP.1 = 192.168.6.236

EOF

6、使用自签名 CA 生成 SSL 证书

openssl x509 -req -in server.csr -CA rootCA.crt -CAkey rootCA.key -CAcreateserial -out server.crt -days 365 -sha256 -extfile cert.conf

cert.conf 用来生成根证书(server.crt)的配置
csr.conf 用来生成向CA机构提申请的文件(server.csr)的配置
rootCA.crt 生成的自定义CA机构的拥有的证书
rootCA.key 生成的自定义CA机构的拥有的密钥
rootCA.srl
server.crt 服务器证书
server.csr 证书签名请求 (CSR),包含自己需要申请的服务器证书的配置信息
server.key 服务器私钥,用来生成(server.csr),想CA申请 服务器证书

nginx配置示例

server {
        listen 8088 ssl;   #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
        server_name 192.168.6.236;  #将localhost修改为您证书绑定的域名,例如:www.example.com。
        #root html;
        #index index.html index.htm;
        ssl_certificate server.crt;   #将domain name.pem替换成您证书的文件名。
        ssl_certificate_key server.key;   #将domain name.key替换成您证书的密钥文件名。
        ssl_session_timeout 5m;
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;  #使用此加密套件。
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;   #使用该协议进行配置。
        ssl_prefer_server_ciphers on;

        charset utf-8;

        #access_log  logs/host.access.log  main;

        client_max_body_size 1024M;
        client_body_buffer_size 2M;

        error_page 497 https://$http_host$request_uri;

        add_header Access-Control-Allow-Origin *;
        add_header Access-Control-Allow-Methods 'GET, POST, OPTIONS';
        add_header Access-Control-Allow-Headers 'DNT,X-Mx-ReqToken,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Authorization';
        #add_header Content-Security-Policy upgrade-insecure-requests;

        location / {
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
            proxy_set_header Host $http_host;

            proxy_connect_timeout 300;
            # Default is HTTP/1, keepalive is only enabled in HTTP/1.1
            proxy_http_version 1.1;
            proxy_set_header Connection "";
            chunked_transfer_encoding off;

            proxy_pass http://localhost:8080/;
        }

        location ~*/(upload|static|videos)/ {
			root   "D:\Msetp-platform\webapps\ROOT";
            index  index.html index.htm;
            expires 1d;
        }
    }

7、生成tomcat需要的证书文章来源地址https://www.toymoban.com/news/detail-471385.html

openssl pkcs12 -export -clcerts -in server.crt -inkey server.key -out server.p12


keytool -importkeystore -srckeystore server.p12 -destkeystore server.jks -srcstoretype pkcs12 -deststoretype jks

keytool -importkeystore -srckeystore server.jks -destkeystore server.jks -deststoretype pkcs12

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

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

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

相关文章

  • https-OPenSSL证书生成及自签名证书

    目录 SSL/TLS 1、搭建OPenssl服务器 1.1、下载  1.2、安装下载好的exe程序 2、服务器端证书-生成key、CSR、CRT 2.1、进入如下目录,执行cmd  2.2、生成一个私钥key  2.3、由生成的私钥key生成一个待签名的CSR证书文件(公钥)  2.4、查看证书内容 3、自建CA证书 3.1、创建CA私钥 3.2、生成C

    2024年02月08日
    浏览(45)
  • 通过openSSL生成自签名的SSL证书

    自签名证书:就是 指的根证书,就是颁发者:和颁发给: 是相同的。证书的签名是用证书里的公钥对应的私钥进行的签名。这样的证书除非是受信任的颁布机构颁发f,一般是不被第三方信任。一般用于内部使用及测试使用。 下面介绍生成证书的方法: 1. 生成私 钥 要创建

    2023年04月17日
    浏览(46)
  • openssl自签名CA根证书、服务端和客户端证书生成并模拟单向/双向证书验证

    1.1 生成CA证书私钥 openssl genrsa -aes256 -out ca.key 2048 1.2 取消密钥的密码保护 openssl rsa -in ca.key -out ca.key 1.3 生成根证书签发申请文件(csr文件) openssl req -new -sha256 -key ca.key -out ca.csr -subj \\\"/C=CN/ST=FJ/L=XM/O=NONE/OU=NONE/CN=localhost/emailAddress=test@test.com\\\" 上述参数含义 req----执行证书签发命令

    2024年04月25日
    浏览(42)
  • win如何使用OpenSSL生成自签名证书,使 http 升级为 https

    win如何使用OpenSSL生成自签名证书,使 http 升级为 https HTTPS其实就是HTTP over SSL,也就是让HTTP连接建立在SSL安全连接之上。 创建自签名证书需要安装openssl。参考本文 安装OpenSSL 部分。 使用OpenSSL生成自签名证书的步骤:参考本文 使用OpenSSL生成自签名证书 部分。 创建私钥Key(

    2024年02月11日
    浏览(47)
  • 在Linux上使用openssl生成CA认证文件并为服务器和客户端颁发CA签名证书

    本文基于Linux上CentOS 7版本配合openssl与mod_ssl(需要使用yum下载)进行配置演示 目录 一.生成认证主要流程 1.虚拟出一个CA认证机构,为其生成公私钥以及自签证书 2.生成服务器方私钥,发送包含服务器方公私钥的申请文件给CA机构请求签发证书 3.生成客户端方私钥,发送包含服务

    2024年02月16日
    浏览(53)
  • Linux(openssl):用CA证书签名具有SAN的CSR

    Linux(openssl):创建CA证书,并用其对CSR进行签名_生成ca证书签名请求文件csr-CSDN博客 提供了方法为CSR进行签名。 对于有SAN的CSR如何签名呢? 1.创建CA证书,与下面的帖子一样

    2024年01月22日
    浏览(46)
  • Nginx解决通过openssl自签名证书访问Https报不安全告警的问题

    nginx代理设置自签ssl证书并进行https方式访问,浏览器中会报不安全的告警,记录一下处理过程 本文内容摘自CSDN博主「Dylanu」的原创文章 解决https网站通过nginx+openssl自签名证书访问,在谷歌浏览器报不安全告警的问题 使用指定-subj “/C=CN/ST=MyProvince/L=MyCity/O=MyOrganization”,生成根

    2024年02月03日
    浏览(42)
  • 火狐导入burp证书出现:此证书已在此前安装为一个证书颁发机构

    问题:在给火狐导入burp的证书时出现此证书已在此前安装为一个证书颁发机构 解决办法: 删除火狐 我是之间在我本地火狐安装路径下shift+delete C:Program Files 重新安装火狐:Firefox 火狐浏览器 - 全新、安全、快速 | 官方最新下载 安装时桌面会出现: 安装完成后将其放入火狐

    2024年02月03日
    浏览(30)
  • openssl安装,openssl生成私钥以及openssl生成证书

    首先安装perl工具,下载地址: Download Install Perl - ActiveState Download Perl 5.32 and 5.28 from ActiveState get precompiled Perl distribution. ActiveState Perl is free to download. https://www.activestate.com/activeperl/downloads 我下载了 这个版本(安装过程下一步下一步即可) 我安装在 C:Perl64 然后下载openssl: /s

    2024年02月08日
    浏览(59)
  • ie下“无法将这个证书验证到一个受信赖的证书颁发机构”问题解决

    问题描述: 用户登录网站,弹出弹框显示“该站点安全证书的吊销信息不可用。是否继续?”,查看详情显示“无法将这个证书验证到一个受信任的证书颁发机构。” 这个问题其实不影响正常功能使用,就是老弹出来挺烦人,于是用户叫我解决一下。 解决方法: 1.根据弹框显

    2024年02月07日
    浏览(46)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包