导航:首页 > 证书转让 > opensslssl证书

opensslssl证书

发布时间:2022-12-28 04:15:45

『壹』 openssl 生成ssl证书 能不能用

用openssl生成的ssl证书也叫自签名ssl证书,这种证书不建议使用,因为有很多弊端:

第一、被“有心者”利用。

其实“有心者”指的就是黑客。自签名SSL证书你自己可以签发,那么同样别人也可以签发。黑客正好利用其随意签发性,分分钟就能伪造出一张一模一样的自签证书来安装在钓鱼网站上,让访客们分不清孰真孰假。

第二、浏览器会弹出警告,易遭受攻击

前面有提到自签名SSL证书是不受浏览器信任的,即使网站安装了自签名SSL证书,当用户访问时浏览器还是会持续弹出警告,让用户体验度大大降低。因它不是由CA进行验证签发的,所以CA是无法识别签名者并且不会信任它,因此私钥也形同虚设,网站的安全性会大大降低,从而给攻击者可乘之机。

第三、安装容易,吊销难

自签名SSL证书是没有可访问的吊销列表的,所以它不具备让浏览器实时查验证书的状态,一旦证书丢失或者被盗而无法吊销,就很有可能被用于非法用途从而让用户蒙受损失。同时,浏览器还会发出“吊销列表不可用,是否继续?”的警告,不仅降低了网页的浏览速度,还大大降低了访问者对网站的信任度。

第四、超长有效期,时间越长越容易被破解

自签名SSL证书的有效期特别长,短则几年,长则几十年,想签发多少年就多少年。而由受信任的CA机构签发的SSL证书有效期不会超过2年,因为时间越长,就越有可能被黑客破解。所以超长有效期是它的一个弊端。

『贰』 如何创建一个自签名的SSL证书

创建自签名不会被浏览器信任,当然起不到SSL证书真正的加密,很随意的被模仿或复制。
建议您淘宝:Gworg 获取可信SSL证书。
创建自签名证书的步骤

注意:以下步骤仅用于配置内部使用或测试需要的SSL证书。
第1步:生成私钥
使用openssl工具生成一个RSA私钥
$ openssl genrsa -des3 -out server.key 2048
说明:生成rsa私钥,des3算法,2048位强度,server.key是秘钥文件名。
注意:生成私钥,需要提供一个至少4位的密码。
第2步:生成CSR(证书签名请求)
生成私钥之后,便可以创建csr文件了。
此时可以有两种选择。理想情况下,可以将证书发送给证书颁发机构(CA),CA验证过请求者的身份之后,会出具签名证书(很贵)。另外,如果只是内部或者测试需求,也可以使用OpenSSL实现自签名,具体操作如下:

$ openssl req -new -key server.key -out server.csr
说明:需要依次输入国家,地区,城市,组织,组织单位,Common Name和Email。其中Common Name,可以写自己的名字或者域名,如果要支持https,Common Name应该与域名保持一致,否则会引起浏览器警告。

Country Name (2 letter code) [AU]:CN
State or Province Name (full name) [Some-State]:Beijing
Locality Name (eg, city) []:Beijing
Organization Name (eg, company) [Internet Widgits Pty Ltd]:joyios
Organizational Unit Name (eg, section) []:info technology
Common Name (e.g. server FQDN or YOUR name) []:demo.joyios.com
Email Address []:[email protected]

第3步:删除私钥中的密码
在第1步创建私钥的过程中,由于必须要指定一个密码。而这个密码会带来一个副作用,那就是在每次Apache启动Web服务器时,都会要求输入密码,这显然非常不方便。要删除私钥中的密码,操作如下:

cp server.key server.key.org
openssl rsa -in server.key.org -out server.key

第4步:生成自签名证书
如果你不想花钱让CA签名,或者只是测试SSL的具体实现。那么,现在便可以着手生成一个自签名的证书了。

$ openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
说明:crt上有证书持有人的信息,持有人的公钥,以及签署者的签名等信息。当用户安装了证书之后,便意味着信任了这份证书,同时拥有了其中的公钥。证书上会说明用途,例如服务器认证,客户端认证,或者签署其他证书。当系统收到一份新的证书的时候,证书会说明,是由谁签署的。如果这个签署者确实可以签署其他证书,并且收到证书上的签名和签署者的公钥可以对上的时候,系统就自动信任新的证书。
第5步:安装私钥和证书
将私钥和证书文件复制到Apache的配置目录下即可,在Mac 10.10系统中,复制到/etc/apache2/目录中即可。
需要注意的是,在使用自签名证书时,浏览器会提示证书不受信任,如果你是对外网站使用,建议还是去CA机构申请可信的SSL证书,现在证书也很便宜,Gworg SSL证书可以淘宝获取。

『叁』 openssl 生成nginx永久ssl证书

1、SSL证书制作依靠openssl,首先检查OpenSSL:一般centos7上默认装好了

[root@zq testzq]# openssl version

OpenSSL 1.0.2k-fips  26 Jan 2017

2、生成私钥和自签名的SSL证书:

2.1、生成私钥 ,参数genrsa:生成RSA私钥;-des3:des3算法;-out server.pass.key:生成的私钥文件名;2048:私钥长度

[root@zq testzq]# openssl genrsa -des3 -out server.pass.key 2048

Generating RSA private key, 2048 bit long molus

.............................................................+++

.......................+++

e is 65537 (0x10001)

Enter pass phrase for server.pass.key:

Verifying - Enter pass phrase for server.pass.key:                #输入一个4位以上的密码

[root@zqtestzq]# ll

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件

2.2、去除私钥中的密码

[root@zq testzq]# openssl rsa -in server.pass.key -out server.key

Enter pass phrase for server.pass.key:

writing RSA key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key    #有密码的私钥文件

[root@zq testzq]# openssl genrsa -des3 -out server.pass.key 2048

Generating RSA private key, 2048 bit long molus

.............................................................+++

.......................+++

e is 65537 (0x10001)

Enter pass phrase for server.pass.key:

Verifying - Enter pass phrase for server.pass.key:                #输入一个4位以上的密码

[root@zqtestzq]# ll

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件

2.2、去除私钥中的密码

[root@zq testzq]# openssl rsa -in server.pass.key -out server.key

Enter pass phrase for server.pass.key:

writing RSA key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key    #有密码的私钥文件

2.3、生成CSR(证书签名请求文件)

[root@zq testzq]# openssl req -new -key server.key -out server.csr -subj "/C=CN/ST=Guangdong/L=Guangzhou/O=xdevops/OU=xdevops/CN=gitlab.xdevops.cn"

参数说明:# req 生成证书签名请求   

                  # -new 新生成           

                  # -key 私钥文件               

                  # -out 生成的CSR文件             

                  # -subj 生成CSR证书的参数

2.4、生成自签名的SSL证书

[root@zq testzq]# openssl x509 -req -days 1825 -in server.csr -signkey server.key -out server.crt  #-days:证书有限期(天)

Signature ok

subject=/C=CN/ST=Guangdong/L=Guangzhou/O=xdevops/OU=xdevops/CN=gitlab.xdevops.cn

Getting Private key

[root@zq testzq]# ll

-rw-r--r-- 1 root root 1241 1月  20 11:00 server.crt            #自签名的SSL证书

-rw-r--r-- 1 root root 1021 1月  20 11:00 server.csr            #签名文件

-rw-r--r-- 1 root root 1679 1月  20 11:01 server.key            #无密码的私钥文件

-rw-r--r-- 1 root root 1751 1月  20 11:01 server.pass.key  #有密码的私钥文件nginx

server {

    listen      8443;

    ssl          on;

    ssl_certificate /home/testzq/server.crt;      #配置已签名的SSL证书.crt

    ssl_certificate_key /home/testzq/server.key;  #配置已签名的证书私钥.key

    .............................................

server {

    listen      443;

    ssl          on;

    ssl_certificate /home/testzq/server.crt;

    ssl_certificate_key /home/testzq/server.key;

『肆』 openssl 生成ssl证书 能不能用

可以自己自用,但是面向全社会,是不行,因为根证书无法验证你搞的自签证书。推荐一个openssl
视频教程,里面有加密的使用,模拟CA签发证书等,还讲解了TLS/SSL协议的原理,以及在nginx等软件上的部署调优。具体链接:网页链接

『伍』 OpenSSL生成HTTPS自签名证书

之前在Windows上有用Perl编译过OpenSSL,不过只是要用它的两个静态库,这次搭一个https server还要用它来生成自签名证书,其中我的配置文件在openssl/apps/openssl.cnf,编译后openssl.exe在openssl/out32/openssl.exe,编译过程可以去网上查,资料还是挺多的。
OpenSSL默认加载配置文件路径是 /usr/local/ssl/openssl.cnf ,因此在开始前需要先设定一下'OPENSSL_CONF'环境变量:

之后就可以根据自己的需求来生成密钥和证书了,关于SSL/TLS原理此处也不多赘述,其中包含了多种非对称加密、对称加密算法,下面将罗列生成CA、server、client三方证书的步骤,但对于只做单向鉴定的情况下client证书是不必要的。

过程都是相同的,先生成1024位的RSA私钥,然后生成证书请求文件(.csr),csr文件经CA私钥签名后生成公钥(即X.509证书),如果需要的话还可以再把它导出为其他格式比如PKCS#12证书(.p12)。

『陆』 用openssl 和 keytool 生成 SSL证书

SSL(Secure Sockets Layer (SSL) and Transport Layer Security (TLS))被设计为加强Web安全传输(HTTP/HTTPS/)的协议(事实上还有SMTP/NNTP等) ,默认使用443端口

openssl 适用范围广。

keytool 单独针对 java application

数字证书是现代互联网中个体间相互信任的基石。

如果没有了数字证书,那么也就没有了各式各样的电商平台以及方便的电子支付服务。目前我们所提到的数字证书都是基于 ITU 制定的 X.509 标准。

简单来说,数字证书就是一张附带了数字签名的信息表。

x509证书一般会用到三类文件,key,csr,crt。

Key是私用密钥,openssl格式,通常是rsa算法。

csr是证书请求文件(certificate signing request),用于申请证书。在制作csr文件的时候,必须使用自己的私钥来签署申请,还可以设定一个密钥。

crt是CA认证后的证书文件(certificate),签署人用自己的key给你签署的凭证。

CA根证书的生成步骤

生成CA私钥(.key)-->生成CA证书请求(.csr)-->自签名得到根证书(.crt)(CA给自已颁发的证书)。

本质上就是用私钥去获取证书,然后把这两个文件一起放到server,以此来证明 我就是我

上面是交互式输入,非交互的方式如下

自签名是免费/测试的证书,浏览器默认不认可。

通常的方法是:提交CSR到证书公司(比如VeriSign,Inc),等对方发来证书。(当然这是要花钱的)

比如Nginx服务器,把 ca.key 和 ca.crt 放到 /etc/nginx/certs 目录。修改/etc/nginx/nginx.conf

重启服务生效

引入一个概念:SAN

SAN stands for “ Subject Alternative Names ” and this helps you to have a single certificate for multiple CN (Common Name).

简而言之,用SAN是为了省钱,一个证书给多个网址使用。如果用之前的交互方式来申请证书,根本没有地方来输入SAN,要解决这问题,需用到配置文件。

The entries in SAN certificate:

Create new Private Key and Certificate Signing Request

生成 private key 和 生成 CSR 合并成一步

例子

于是 ca.csr ca.key 都生成了,csr 用于申请证书。

Keytool 是一个Java数据证书的管理工具 , Keytool将密钥(key)和证书(certificates)存在一个称为keystore的文件中。

这是java专用方式,过程跟openssl 类似。

服务器配置可以使用私钥+证书合并在一起的文件,如jks或者pkcs12文件,这类文件一般叫key.keystore。(openssl使用两个文件)

(openssl 自签名参考上面)

测试阶段,也可以用keytool 来实现自签名(根据证书请求生成证书)。

用 jenkins 来举例

查看单个证书

列出keystore存在的所有证书

使用别名查看keystore特定条目

删除keystore里面指定证书

更改keysore密码

导出keystore里面的指定证书

https://docs.oracle.com/javase/8/docs/technotes/tools/unix/keytool.html

『柒』 SSL证书怎么安装

生成CSR。在购买和安装SSL证书之前,请先在服务器上创建CSR文件。

『捌』 用openssl生成的ssl证书和付费的有什么区别

用openssl生成的SSL证书即自签名证书,存在安全隐患,而且不受浏览器信任。最好从正规第三方证书颁发机构去申请,还不用自己弄代码那么复杂,GDCA可以申请各类型SSL证书,免费付费的都有,看你需要。

『玖』 如何利用openssl为iis生成ssl服务器证书

2.在要安加SSL服务的网站,右键打开网站属性Table. 3.选取目录安全中的服务器证书. 4.进入生成服务器证书请求的步骤中,一步步填写相应的信息。每一步相应的信息要记住,这些信息在后面要用到。二、openssl操作: 1.生成私钥。 openssl genrsa -des3 -out cakey.pem 2048 2.生成自签名根证书. openssl req -new -x509 -key cakey.pem -out cacert.pem -days 1825
此处会要求输入一些信息: Country Name: CN //两个字母的国家代号 State or Province Name: guang dong //省份名称 Locality Name: guang zhou //城市名称 Organization Name: sunrising //公司名称
Organizational Unit Name: home //部门名称 Common Name: besunny //你的姓名(要是生成服务器端的证书一定要输入域名或者ip地址) 切记一定要和IIS服务器上填写的信息保持一致。 3.在你的openssl主目录下的bin目录下创建如下目录: demoCA
demoCA/newcerts 在demoCA目录下创建一个空的index.txt文件. 在demoCA目录创建一个serial文件,文件内容为01 . 4.把第二步的生成的cakey.pem拷贝到 demoCA/private目录下; 把cacert.pem 拷贝到demoCA目录下. 5.用CA证书cacert.pem为IIS请求certreq.txt签发证书。(将iis服务器生成的certreq.txt存放在openssl/bin下面) openssl ca -in certreq.txt -out iis.cer 6.打开iis.cer,删掉在"-- Begin Certificate --"的文本。 三.IIS服务器操作: 在该网站属性中目录安全的服务器证书 ,导入该证书。 四、测试是否SSL正常。 二、配置OpenSSL1、建立自己的CA证书在openssl的apps目录下建立自己的CA证书,例如mageCAC:/openssl098b/apps>mkdir mageCA2、生成CA密钥C:/openssl098b/apps>openssl genrsa -out mageCA/ca-key.pem 1024Genrsa[产生密钥命令] –out[密钥文件输出路径] 1024[密钥位数]Loading 'screen' into random state - doneGenerating RSA private key, 1024 bit long molus..............................++++++......++++++3、生成待签名的证书C:/openssl098b/apps>openssl req -new -out mageCA/ca-req.csr -key mageCA/ca-key.pemreq[产生证书命令]-new[新生成]-out[证书文件输出路径]-key[私钥文件路径]报错:Using configuration from /usr/local/ssl/openssl.cnfUnable to load config infounable to find 'distinguished_name' in configproblems making Certificate Request2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:2188:error:0E06D06A:configurationfileroutines:NCONF_get_string:no conf or environment variable:./crypto/conf/conf_lib.c:344:出现这样的问题后,打开了apps下的req查看DIAGNOSTICS: =head1 DIAGNOSTICSThe following messages are frequently asked about:? Using configuration from /some/path/openssl.cnf? Unable to load config infoThis is followed some time later by...? unable to find 'distinguished_name' in config? problems making Certificate RequestThe first error message is the clue: it can't find the configurationfile! Certain operations (like examining a certificate request) don'tneed a configurationfile so its use isn't enforced. Generation ofcertificates or requests however does need a configurationfile. Thiscould be regarded as a bug.依然不能解决问题,在网上搜索,被告知是环境变量没有设置,于是设置系统用户变量OPENSSL_CONF为C:/openssl098b/apps/openssl_cnf。重开一个命令行窗口,要求输入一系列的信息,如国家、省、市、公司、部门、姓名、电子邮件等,命令执行完成。在设置了环境变量以后,一定要另开一个命令行窗口!一开始我就是没有另开窗口,所以后来又耽误了好多时间,不过,真是因为这个错误,我才搞清楚了openssl_cnf!至于openssl_cnf,笨笨的我还在apps下找了好半天,都没有找到这个文件,后来被高手告知就是那个名为openssl的计算机图标一样的文件,是可以用写字板打开的!狂晕!还有人说是在ssl目录下,但是我的不是!

『拾』 什么是自签名SSL证书

自己生成的SSL证书,不是CA机构颁发的SSL证书,称之为自签名证书。

解释原因:回

  1. 受信任的SSL证书:会答被浏览器信任认可,安全加密服务与安全扫描相关CA配套服务。
  2. 自签署的SSL证书:不会被浏览器信任,数据被泄漏级劫持安全漏洞安全风险较高。

自签名主要风险:

  1. 浏览器的地址栏会提示风险不安全网站。

  2. 小程序或APP无法应用与支持。

  3. 无法实现信用与接口交易行为。

  4. 网页会被劫持,被强制插入广告或跳转到其它网页。

  5. 用户数据明文传输,隐私信息被中间劫持。

  6. 极容易被劫持和钓鱼攻击。

自签名安全隐患:

  1. 自签证书最容易受到SSL中间人攻击

  2. 自签证书支持不安全的SSL通信重新协商机制

  3. 自签证书支持非常不安全的SSL V2.0协议

  4. 自签证书没有可访问的吊销列表

  5. 自签证书使用不安全的1024位非对称密钥对

  6. 自签证书证书有效期太长

  7. 自签证书普遍存在严重的安全漏洞,极易受到攻击

解决方法:Gworg申请可信SSL证书。

阅读全文

与opensslssl证书相关的资料

热点内容
施工索赔有效期 浏览:153
矛盾纠纷交办单 浏览:447
2010年公需课知识产权法基础与实务答案 浏览:391
侵权责任法第5556条 浏览:369
创造者对吉阿赫利直播 浏览:786
中小企业公共服务平台网络 浏览:846
深圳市润之行商标制作有限公司 浏览:62
江莉马鞍山 浏览:417
马鞍山大事件 浏览:759
机动车销售统一发票抵扣期限 浏览:451
马鞍山防汛抗旱指挥部通告 浏览:811
公司间商标授权书模板 浏览:115
上海市医患纠纷预防与调解办法 浏览:970
转让翻转犁 浏览:705
门头广告牌使用费合同 浏览:835
厂转让样本 浏览:8
摊销土地有残值吗 浏览:529
永久煤柱摊销系数是多少 浏览:421
工商局的权力 浏览:637
商标注册0603分类 浏览:655