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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

马哥linux学习笔记:openssl的使用

發布時間:2025/4/16 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 马哥linux学习笔记:openssl的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

linux中主要通過openssl,gpg等工具來實現加密解密機制,這里我只介紹下openssl的使用方法:

? ? openssl主要由三部分組成:

? ? ? ? libencrypto庫

? ? ? ? libssl庫

? ? ? ? openssl多用途命令行工具

? ? 前兩種是開發調用openssl功能時專用的一些接口,這里就不做過多表述了,現在只介紹一下openssl的一些簡單用法:

? ? openssl從多子命令分為三類:標準命令,消息摘要命令(dgst子命令),加密命令(enc子命令)

? ? 常用用法:

? ? ? ? 對稱加密:

? ? ? ? ? ? 加密:openssl ?enc -e -des3 -a -salt -in fstab -out fstab.des3

? ? ? ? ? ? 解密:openssl enc -d -des3 -a -salt -out fstab1 -in fstab.des3

? ? ? ? 單向加密:

? ? ? ? ? ? dgst命令:openessl dgst -md5 fstab

? ? ? ? 生成用戶密鑰:

? ? ? ? ? ? passwd命令:openssl passwd -1 -salt 123456

? ? ? ? 生成隨機數:

? ? ? ? ? ? rand命令:openssl rand -hex 10

? ? ? ? ? ? ? ? ? ? ? openssl rand -base64 10

? ? ? ? 生成密鑰:

? ? ? ? ? ? 生成私鑰:(umask?077;??openssl??genrsa??-out??/PATH/TO/PRIVATE_KEY_FILE??NUM_BITS)

? ? ? ? ? ? 提出公鑰:openssl rsa -in ./my.pem -pubout

? ? ? ? ? ? ()中的命令表示打開一個子shell執行命令,這樣修改的umask值不影響當前shell

下邊介紹一下如何用openssl構建私有CA;

? ? 創建私有CA要用到的配置文件為:/etc/pki/tls/openssl.cnf

? ? 在確定配置為CA的服務器上生成一個自簽的證書,并未CA提供所需要的目錄及文件即可;

? ? 具體步驟:

? ? ? ? (1)生成私鑰

? ? ? ? ? ? ? ? (umask 077;openssl genrsa -out /etc/pki/CA/cakey.pem 4096)

? ? ? ? (2)生成自簽名證書:

? ? ? ? ? ? ? ? openssl req -new -x509 -key /etc/pki/CA/cakey.pem -out /etc/pki/CA/cacert.pem -days 365

? ? ? ? ? ? 填入相關信息,則自簽證書完成;

? ? ? ? ? ? ? ??-new:生成新證書簽署請求;

? ? ? ? ? ? ? ? -x509:生成自簽格式證書,專用于創建私有CA時;

? ? ? ? ? ? ? ? -key:生成請求時用到的私有文件路徑;

? ? ? ? ? ? ? ? -out:生成的請求文件路徑;如果自簽操作將直接生成簽署過的證書;

? ? ? ? ? ? ? ? -days:證書的有效時長,單位是day;

? ? ? ? (3)為CA提供所需的目錄及文件(不存在就需要手動創建)

? ? ? ? ? ? ? ??mkdir??-pv??/etc/pki/CA/{certs,crl,newcerts}

? ? ? ? ? ? ? ? touch??/etc/pki/CA/{serial,index.txt}

? ? ? ? ? ? ? ? echo??01?>?/etc/pki/CA/serial

? ? 至此,私建的CA已完成,如果要用到證書進行安全通信的服務就可以向其請求簽署證書了;

? ? 這里以httpd服務為例,簡單描述一下申請證書的過程:

? ? 具體步驟:

? ? ? ? (1)用到證書的主機生成私鑰:

? ? ? ? ? ? ? ? mkdir /etc/httpd/ssl

? ? ? ? ? ? ? ? cd /etc/httpd/ssl

? ? ? ? ? ? ? ? (umask 077;openssl getrsa -out /etc/httpd/ssl/httpd.key 4096)? ? ? ? ? ? ? ??

? ? ? ? (2)生成證書簽署請求文件:

? ? ? ? ? ? ? ? openssl req -new -key /etc/httpd/ssl/httpd.key -out /etc/httpd/ssl/httpd.csr -days 365

? ? ? ? (3)將生成的httpd.csr文件以安全的方式發送給CA主機,這里只是測試,我直接用scp復制了

? ? ? ? ? ? ? ? scp /etc/httpd/ssl/httpd.csr root@192.168.0.104:/tmp/

? ? ? ? (4)在CA主機上簽署證書

? ? ? ? ? ? ? ??openssl?ca?-in?/tmp/httpd.csr?-out?/etc/pki/CA/certs/httpd.crt?-days?365

? ? ? ? (5)將簽署后的證書以安全可靠的方式交付給請求主機

? ? ? ? ? ? ? ? scp /etc/pki/CA/certs/htttpd.crt root@192.168.0.100:/etc/httpd/ssl/

? ? ? ? 至此,申請證書的流程完畢。

? ?由于一些特殊的原因,我們也許會申請吊銷證書,下邊說說如何吊銷證書:

? ? 具體步驟:

? ? ? ? (1)客戶端獲取要吊銷的證書的serial(在使用證書的主機執行)

? ? ? ? ? ? openssl x509 -in /etc/httpd/ssl/httpd.crt -noout -serial -subject

? ? ? ? (2)CA機根據客戶提交的serial和subject信息,對比與本機數據庫index.txt中存儲的是否一致,一致的話就予以吊銷; ? ? ? ? ? ?

? ? ? ? ? ? ? ? openssl ca -revoke /etc/pki/CA/newcerts/01.pem

? ? ? ? (3)生成吊銷證書的吊銷編號(第一次吊銷證書時執行)

? ? ? ? ? ? ? ? echo 01 > /etc/pki/CA/crlnumber

? ? ? ? (4)更新證書吊銷列表

? ? ? ? ? ? ? ? openssl ca -gencrl -out /etc/pki/CA/crl/httpd.crl

? ? ? ? (5)查看crl文件;

? ? ? ? ? ? ? ? openssl crl -in /etc/pki/CA/crl/httpd.crl -noout -text

? ? 至此,證書已被吊銷。


轉載于:https://blog.51cto.com/amengmon/1732645

總結

以上是生活随笔為你收集整理的马哥linux学习笔记:openssl的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

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