linux更改ssl的默认算法

linux更改ssl的默认算法,第1张

linux更改ssl的默认算法具体步骤如下:

1、打开OpenSSL的配置文件。通常情况下,OpenSSL的配置文件位于/etc/ssl/openssl.cnf。

2、找到[system_default_sect]部分。在该部分中,可以设置SSL/TLS使用的默认算法。

3、保存文件并退出。

4、重启相关服务。如果是在Web服务器上更改SSL/TLS的默认算法,需要重启Web服务器服务。如果是在其他服务上更改SSL/TLS的默认算法,需要重启相应的服务。

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 modulus

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

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

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 modulus

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

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

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

之前在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)。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11311145.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-15
下一篇 2023-05-15

发表评论

登录后才能评论

评论列表(0条)

保存