精华内容
下载资源
问答
  • openssl验证证书常用命令

    千次阅读 2020-05-11 23:03:34
    输出x509证书信息 openssl x509 -noout -text -in ca.pem 结果如下 Certificate: Data: Version: 3 (0x2) Serial Number: 5f:11:aa:b3:70:18:fd:89:b0:25:7a:9e:36:c5:e7:ce:33:5a:cc:b7 Signature Algorithm: ...

    输出x509证书信息

    openssl x509 -noout -text  -in ca.pem
    

    结果如下

    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number:
                5f:11:aa:b3:70:18:fd:89:b0:25:7a:9e:36:c5:e7:ce:33:5a:cc:b7
        Signature Algorithm: sha256WithRSAEncryption
            Issuer: C=CN, ST=BeiJing, L=BeiJing, O=xx, OU=xx, CN=xx
            Validity
                Not Before: Dec 26 06:17:00 2019 GMT
                Not After : Dec  2 06:17:00 2119 GMT #过期时间
            Subject: C=CN, ST=BeiJing, L=BeiJing, O=xx, OU=xx, CN=xx
            Subject Public Key Info:
            ...
    

    验证公钥私钥是否匹配

    diff -eq <(openssl x509 -pubkey -noout -in cert.crt) <(openssl rsa -pubout -in cert.key)
    

    正常会输出

    writing RSA key
    

    验证证书CA

    openssl verify -CAfile ca.pem client.pem
    

    正常输出

    client.pem: OK
    
    展开全文
  • 提供实际操作的示例,演示linux下用openssl提供的命令,生成多级证书,并验证各级证书的合法性。
  • OpenSSL命令验证证书是否被撤销

    千次阅读 2018-04-13 17:49:43
    OpenSSL命令验证证书是否被撤销前言 验证证书是否被撤销。脚本代码 #!/bin/sh if [[ "$1" = "" || "$2" = "" || "$3" = "" ]]; then echo "...
    OpenSSL命令验证证书是否被撤销

    前言

        验证证书是否被撤销。

    脚本代码

        
    #!/bin/sh
    if [[ "$1" = "" || "$2" = "" || "$3" = "" ]]; then
            echo "certSignVerify.sh  CAfile  certfile crl"  
            exit 0;
    fi
    
    res=`openssl   verify -CAfile $1 -verbose $2 |awk  -F ' '  'BEGIN {}  {print $2} END {}'`
    isInCrl=""
    if [[ "$res" = "OK"  ]]; then
    
            certSerial=`openssl x509 -in $2  -serial   -noout`
            serialNum=`openssl crl -in crl.crl -text -inform DER   | grep 'Serial Number' | awk  -F ':'  'BEGIN {}  {print $2} END {}'`
            serialArray=($serialNum)
            for  ((  i=0; i< ${#serialArray[@]} ; i++ ));  do
    
                    if [[ "$certSerial" = "${serialArray[i]}"  ]]; then
                            isInCrl="in"
                            break;
                    fi
    
            done
    else
            echo "cert Verify error"
    fi
    
    if [[ "$isInCrl" = ""  ]]; then
            echo "not in crl"
    else
            echo "in crl"
    fi
    

    测试

         脚本执行格式:./test.sh  rsaca.cer rsa1.cer crl.crl

        
    展开全文
  • openssl verify 验证证书

    万次阅读 2012-09-20 17:54:29
    openssl verify 命令证书的有效性进行验证,verify 指令会沿着证书链一直向上验证,直到一个自签名的CA。 环境 根据openssl ca>建立自签名的root CA,然后再用root CA签发另一个CA(我命名为alice),在用alice...

    <openssl verify> <fym0121@163.com>

    介绍

    openssl verify 命令对证书的有效性进行验证,verify 指令会沿着证书链一直向上验证,直到一个自签名的CA。

    环境

    根据<openssl ca>建立自签名的root CA,然后再用root CA签发另一个CA(我命名为alice),在用alice签发用户second的证书。最后我们对bob的证书进行验证。

    目录结构为

    ├─alice
    │  └─demoCA
    │      ├─newcerts
    │      └─private
    ├─demoCA
    │  ├─newcerts
    │  └─private
    └─second

    语法

    openssl verify[-CApath directory] [-CAfile file] [-purpose purpose] [-policy arg] [-ignore_critical] [-crl_check] [-crl_check_all] [-policy_check] [-explicit_policy] [-inhibit_any] [-inhibit_map] [-x509_strict] [-extended_crl] [-use_deltas] [-policy_print] [-untrusted file] [-help] [-issuer_checks] [-verbose] [-] [certificates]

    -CApath directory     指定CA证书所在的目录,这个目录下可能存在证书链中的多个证书文件。为了对这个目录下的证书进行检索,证书文件的命名需要遵循xxxxxxxx.0,其中xxxxxxxx是openssl x509 -hash -in 证书, 的输出值,8个字母或数字。“.0”是要有的。

    用root CA对alice的证书进行验证,使用-CApath选项。我们首先要x509命令的 -hash选项计算root CA的hash值。我们假定CApath目录为“CApath”,首先建立目录CApath,我们这次的工作目录依然为e:\openssl\foo.

    E:\OpenSSL\foo>mkdir CApath
    E:\OpenSSL\foo>openssl x509 -hash -in demoCA\cacert.pem -noout
    3ff5a598
    E:\OpenSSL\foo>cp demoCA\cacert.pem CApath\3ff5a598.0
    
    对alice的证书进行验证

    E:\OpenSSL\foo>openssl verify -CApath CApath alice\demoCA\cacert.pem
    alice\demoCA\cacert.pem: OK
    对bob的证书进行验证。在对bob证书验证前,需要先对alice的证书进行x509 -hash ,计算证书hash,并重命名复制到CApath目录下。

    E:\OpenSSL\foo>openssl x509 -hash -in alice\demoCA\cacert.pem -noout  # 计算hash
    b9c7a1d7
    E:\OpenSSL\foo>cp alice\demoCA\cacert.pem CApath\b9c7a1d7.0   # 按hash值重命名,并放到CApath指定的目录下
    E:\OpenSSL\foo>openssl verify -CApath CApath bob\bob.pem      # 验证
    bob\bob.pem: OK
    

    -CAfile  filename    指定CA的证书文件,PEM格式,这个文件里可能不只包含一个证书。如果需要对证书链进行验证,指定的文件中应包含所有的证书。加入顶级CA证书文件名为0.pem,一级CA证书文件为1.pem,二级证书文件为2.pem,待验证的证书文件是eve.pem,那么需要先将0.pem,1.pem证书文件的内容包含到2.pem中。证书文件都是文本文件,简单地使用cat命令就可以进行连接。

    cat 0.pem >> 1.pem
    cat 1.pem >> 2.pem
    使用CAfile选项,对bob证书进行验证

    E:\OpenSSL\foo>cat demoCA\cacert.pem >> alice\demoCA\cacert.pem
    E:\OpenSSL\foo>openssl verify -CAfile alice\demoCA\cacert.pem bob\bob.pem
    bob\bob.pem: OK
    

    其他的,待完善...








    展开全文
  • openssl 证书操作命令

    万次阅读 2014-05-23 16:28:37
    # 查看KEY信息 > openssl rsa -noout -text -in myserver.key # 查看CSR信息 > openssl req -noout -text -in myserver.csr # 查看证书信息 > openssl x509 -noout -...# 验证证书 # 会提示self signed

    生成Self Signed证书

    # 生成一个key,你的私钥,openssl会提示你输入一个密码,可以输入,也可以不输,
    # 输入的话,以后每次使用这个key的时候都要输入密码,安全起见,还是应该有一个密码保护
    > openssl genrsa -des3 -out selfsign.key 4096
    
    # 使用上面生成的key,生成一个certificate signing request (CSR)
    # 如果你的key有密码保护,openssl首先会询问你的密码,然后询问你一系列问题,
    # 其中Common Name(CN)是最重要的,它代表你的证书要代表的目标,如果你为网站申请的证书,就要添你的域名。
    > openssl req -new -key selfsign.key -out selfsign.csr
    
    # 生成Self Signed证书 selfsign.crt就是我们生成的证书了
    > openssl x509 -req -days 365 -in selfsign.csr -signkey selfsign.key -out selfsign.crt
    
    # 另外一个比较简单的方法就是用下面的命令,一次生成key和证书
    > openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout privateKey.key -out certificate.crt

    生成自己的CA (Certificate Authority)

    # 生成CA的key
    > openssl genrsa -des3 -out ca.key 4096
    
    # 生成CA的证书
    > openssl req -new -x509 -days 365 -key ca.key -out ca.crt
    
    # 生成我们的key和CSR这两步与上面Self Signed中是一样的
    > openssl genrsa -des3 -out myserver.key 4096
    > openssl req -new -key myserver.key -out myserver.csr
    
    # 使用ca的证书和key,生成我们的证书
    # 这里的set_serial指明了证书的序号,如果证书过期了(365天后),
    # 或者证书key泄漏了,需要重新发证的时候,就要加1
    > openssl x509 -req -days 365 -in myserver.csr -CA ca.crt -CAkey ca.key -set_serial 01 -out myserver.crt

    查看证书

    # 查看KEY信息
    > openssl rsa -noout -text -in myserver.key
    
    # 查看CSR信息
    > openssl req -noout -text -in myserver.csr
    
    # 查看证书信息
    > openssl x509 -noout -text -in ca.crt
    
    # 验证证书
    # 会提示self signed
    > openssl verify selfsign.crt
    
    # 因为myserver.crt 是幅ca.crt发布的,所以会验证成功
    > openssl verify -CAfile ca.crt myserver.crt

    去掉key的密码保护

    有时候每次都要输入密码太繁琐了,可以把Key的保护密码去掉

    > openssl rsa -in myserver.key -out server.key.insecure

    不同格式证书的转换

    # PKCS转换为PEM
    > openssl pkcs12 -in myserver.pfx -out myserver.pem -nodes
    
    
    # PEM转换为DER
    > openssl x509 -outform der -in myserver.pem -out myserver.[der|crt]
    
    
    # PEM提取KEY
    > openssl RSA -in myserver.pem -out myserver.key
    
    # DER转换为PEM
    > openssl x509 -inform der -in myserver.[cer|crt] -out myserver.pem
    
    # PEM转换为PKCS
    > openssl pkcs12 -export -out myserver.pfx -inkey myserver.key -in myserver.pem -certfile ca.crt
    
    

    测试证书

    Openssl提供了简单的client和server工具,可以用来模拟SSL连接,做测试使用。

    # 连接到远程服务器
    > openssl s_client -connect www.google.com.hk:443
    
    # 模拟的HTTPS服务,可以返回Openssl相关信息 
    # -accept 用来指定监听的端口号 
    # -cert -key 用来指定提供服务的key和证书
    > openssl s_server -accept 443 -cert myserver.crt -key myserver.key -www
    
    # 可以将key和证书写到同一个文件中
    > cat myserver.crt myserver.key > myserver.pem
    # 使用的时候只提供一个参数就可以了
    > openssl s_server -accept 443 -cert myserver.pem -www
    
    # 可以将服务器的证书保存下来
    > openssl s_client -connect www.google.com.hk:443 </dev/null | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > remoteserver.pem
    # 转换成DER文件,就可以在Windows下直接查看了
    > openssl x509 -outform der -in remoteserver.pem -out remoteserver.cer

    计算MD5和SHA1

    # MD5 digest
    > openssl dgst -md5 filename
    
    # SHA1 digest
    > openssl dgst -sha1 filename


    展开全文
  • 出现如下提示: 解决办法在地址后加上 --no-check-certificate //例如 wget https://nginx.org/download/nginx-1.9.9.tar.gz --no-check-certificate
  • 外部命令证书验证器是EJBCA Enterprise 6.11中引入的,可在证书或预证书对象上运行,并在本地文件系统上调用脚本。 cert-validator是用于创建您自己的基于Java的证书验证器的框架,该框架可以由EJBCA调用。 有关...
  • 使用OpenSSL生成自签名证书相关命令

    千次阅读 2020-07-16 18:46:30
    下面通过OpenSSL相关命令介绍如何生成自签证书。 1. 生成自签名根证书(一级证书): (1).产生长度为2048的rsa私钥root.key,PEM格式: LD_LIBRARY_PATH=../lib ./openssl genrsa -out root.key 2048 (2).验证私钥...
  • openssl 证书验证

    千次阅读 2019-08-05 18:22:27
    本节中我们快速浏览一下证书验证的主干代码。读者可以采用上节中生成的VC工程进行验证。 下面列出关键部分代码,为方便阅读,仅保留与证书验证强相关的代码,去掉了诸如变量定义、错误处理、资源释放等非主要代码,...
  • SSL证书文件验证

    千次阅读 2019-10-31 10:47:59
    SSL证书域名验证 SSL证书域名验证方式有三种:自动DNS验证,手工DNS验证,文件验证 自动DNS验证:域名和SSL证书都是同一个供应商购买 手工DNS验证:域名和SSL证书不是同一个供应商购买,需要到域名提供方进行解析...
  • openssl自签名证书命令

    2018-07-09 22:06:15
    https目前广泛流行,现提供openssl自签名证书命令和基本验证命令
  • 用openssl命令制作生成证书和自签名
  • 基于gmssl实现国密证书签发验证

    千次阅读 2020-02-03 12:53:04
    根CA所需要的文件夹有certs(证书文件夹)、crl(吊销数据文件夹)、newcerts(新生成的证书文件夹)、private(私有数据文件夹)。同时还需要在本地生成数据记录文件index.txt,用以记录对证书的操作,...
  • $ wget ‘https://x.x.x.x/get_ips’ --no-check-certificate $ curl ‘https://x.x.x.x/get_ips’ -k
  • wget 不验证证书进行https请求

    千次阅读 2020-03-20 21:46:59
    wget 'https://x.x.x.x/get_ips' --no-check-certificate 即可
  • SSL证书生成,签名,验证

    千次阅读 2017-09-25 16:44:36
    SSL 证书生成,CA签名,客户端验证过程
  • gmssl 生成证书命令

    千次阅读 2018-11-20 13:56:41
    cd gmssl/apps/ export LD_LIBRARY_PATH=$PWD:$LD_LIBRARY_PATH export OPENSSL_CONF=openssl.cnf cd ../bin/ expire_days=365 subj=/C=".../ST="BeiJing"/L="HaiDian".../emailAddr
  • keytool命令详解 自签名证书

    千次阅读 2019-09-11 11:37:00
    keytool命令详解 文章目录keytool命令详解keytool简介keytool功能其他命令 最近是又用到了自签名证书相关的内容,这里整理下keytool的使用 keytool简介 Keytool 是一个Java 数据证书的管理工具 ,Keytool 将密钥(key...
  • 1、首先拿到证书要去验证一下,将tomcat.keystore放到JDK的 bin目录下然后进入dos命令行,执行该命令keytool -list -v -keystore tomcatXXX.keystore(或者filename.jks) 输入密钥:123456 执行完毕如下图: ...
  • 但是现在,很多热门应用程序至少会检查证书链是否是一个有效可信任的证书机构(CA)颁发的。作为一名渗透测试人员来说,我们常常需要让目标应用程序信任我们的证书是有效的,这样我们就可以进行中间人攻击(MITM)并...
  • curl wget 跳过关闭 https 证书验证

    千次阅读 2020-10-12 01:20:18
    命令 curl curl 'https://192.168.0.100:9200' -k wget wget 'https://192.168.0.100:9200' --no-check-certificate 参考 https://blog.csdn.net/lilongsy/article/details/97630027
  • java 请求https接口 证书验证

    千次阅读 2016-07-25 15:04:52
    java ssl 证书验证有两种方式:1是将证书导入到java安全证书库中;2是将证书通过keytool导出一个密钥文件,然后通过代码加载该文件进行验证。 第1种方式导入证书后,请求https时就直接报错: javax.net.ssl....
  • 验证公钥证书是否和秘钥匹配

    千次阅读 2018-04-17 16:56:05
    验证公钥证书是否和秘钥匹配验证脚本#!/bin/sh if [[ "$1" = "" || "$2" = "" ]]; then echo "certCheck.sh certfile keyfile" exit 0; else #certModuleMd5...
  • 代码使用libcurl+openssl实现校验服务器证书的逻辑。 代码以12306网站根证书进行编写举例
  • 验证密钥与证书是否匹配

    千次阅读 2019-04-23 18:16:29
    你可以使用 Certificate Key Matcher 来检验一个密钥是否与证书匹配或证书是否与证书签名请求(CSR)匹配。当你处理很多不同的证书时,很容易忘记哪个证书与哪个密钥匹配或哪个CSR被用来生成哪个证书。Certificate Key...
  • maven忽略SSL证书校验——命令

    千次阅读 2020-05-26 15:48:27
    maven忽略SSL证书校验 mvn clean -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true --清除 mvn compile -Dmaven.wagon....
  • curl wget 跳过关闭https证书验证

    万次阅读 2019-07-29 11:22:27
    wget 'https://192.168.0.100:9200' --no-check-certificate curl 'https://192.168.0.100:9200' -k
  • 通过openssl验证ssl证书匹配性

    万次阅读 2018-08-18 19:47:02
    背景:SSL证书是private key + public key一起工作才能完成加密过程的。 大致来说就是client在handshake过程中先拿public key加密发送随机session encryption key set以及其它关键信息,通过public key密码的报文...
  • Android的证书验证过程

    千次阅读 2020-04-27 23:34:31
    说明:源码分析基于Android_8.1 1 系统证书 源码 /system/ca-certificates/...,其中 hash 通过命令生成,N 为从 0 开始的一个整数标记 openssl x509 -subject_hash_old -in filename Android 系统中,证书存放路径...
  • 验证php的远程命令执行漏洞案例

    千次阅读 2018-09-17 15:42:53
    比如验证JBoss EJBInvokerServlet Marshalled Object RCE(CVE-2013-4810 ) 0x01:首先我们开启php的环境,如phpStudy,wamp等等,这里我们就使用phpStudy吧,进入php-5.5.38的目录(当前使用的这个php版本),将我们...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 64,590
精华内容 25,836
关键字:

验证证书的命令