日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

openssl工具的使用以及创建私有CA

發布時間:2023/12/10 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 openssl工具的使用以及创建私有CA 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

openssl軟件包在安裝之后,主要會生成三段重要內容:加密庫

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ssl相關庫文件

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? openssl命令行工具

下面就來介紹一下openssl命令行工具的使用:

? ?openssl和yum類似,有著許許多多的子命令:

? ? ? ? ? ? ?

如果要獲得這些子命令的相關man文檔,先使用whatis查看一下確定使用man的格式語法

其中常用的子命令有:

?1.enc:實現對稱加密,解密的命令

使用格式:openssl enc ciphername -a [-e] [-salt] -in filename -out filename?

?例如:openssl enc -des3 -a -in /etc/issue -out /root/issue.des3

-a:使用base64編碼

-e:加密,默認行為,可以省略

ciphername:加密算法名稱

-d:解密(使用格式相同)

?2.dgst:實現提取數據指紋的命令

使用格式:openssl dgst [-md5|-md4|-md2|-sha1|-sha|-mdc2|-ripemd160|-dss1] [-out filename]

?例如:openssl dgst -MD5 /etc/login.defs將該文件的數據指紋使用MD5算法提取出輸出至屏幕

其他實現提取數據指紋的命令:md5sum filename

? ? ? ? ? ? ? ? ? sha1sum filename

? ? ? ? ? ? ? ? ? sha*sum filename

?3.rand:生成隨機數的命令

使用格式:openssl rand [options] num

? 例如:openssl rand -base64 9(隨便寫的數字)生成隨機數

可以使用-out 保存至文件

?4.genrsa:生成私鑰的命令(rsa算法。dsa算法的是gendsa)

使用格式:openssl genrsa [-out filename][-des] [-des3] [numbits]

? 例如:openssl genrsa -out /root/cacert.key 2048

生成一個長度為2048的私鑰保存至指定文件,也可以使用-des等選項加密存放

?5.rsa:從私鑰中提取公鑰的命令

使用格式:openssl rsa -in filename -pubout?

從名為filename的私鑰文件中提取公鑰,可以使用輸出重定向的方式保存,也可以使用選項保存

?6.x509:用于查看證書內容的命令

使用格式:openssl x509 -text -in filename(證書)

?7.req:用于生成證書簽署請求或者自簽證書的命令

使用格式:a.生成自簽證書:

? ? ? ? ?openssl req -new -x509?-key /path/to/private.key -out /path/to/cacert.pem

? ? ? b.生成證書簽署請求

? ? ? ? openssl req -new -key /path/to/private.key -out /path/to/cacert.csr

?8.ca:certificate authority 用于簽署證書請求的命令

使用格式:openssl ca -in /path/to/cacert.csr -out /path/to/cacert.crt


如何在redhat系統上創建私有CA:

?1.創建一對密鑰

?2.生成自簽署證書

在redhat系統上,使用rpm包格式安裝openssl會生成/etc/pki/等一系列目錄以及文件

?/etc/pki/tls/openssl.cnf定義了CA的工作目錄,以及其中應該具有的文件

a.在/etc/pki/CA/private/目錄下生成私鑰,應保存為文件名為cakey.pem的文件(該名稱可通過修改上述配置文件的值改變)

?

如圖,生成2048位的私鑰,保存為指定文件名,注意,應該將權限修改為最小權限

為了避免出錯,我們將/etc/pki/tls/openssl.cnf中的CA相關定義截圖出來:

所以private-key應該命名為cakey.pem。并放在指定目錄下

b.生成自簽署的證書,由配置文件定義,可知應保存在/etc/pki/CA目錄下,命名為cacert.pem

?openssl req -new -x509 -key ./private/cakey.pem -out cacert.pem

在使用req子命令的時候,-x509表示自簽署證書

? ? ? ? ? ? ? ?-key用于指定私鑰

? ? ? ? ? ? ? ?-out用于保存證書

c.根據/etc/pki/tls/openssl.cnf中【CA_default】段的相關定義在/etc/pki/CA目錄下創建相關文件

?

至此,CA(certificate authority)創建完畢,可以為其他人簽署證書請求了

當收到證書請求時,簽署辦法

?openssl ca -in?/path/to/cacert.csr?-out /path/to/cacert.crt

轉載于:https://blog.51cto.com/10764546/1704612

總結

以上是生活随笔為你收集整理的openssl工具的使用以及创建私有CA的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。