中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

互聯網中安全和加密的示例分析

發布時間:2021-11-15 09:47:18 來源:億速云 閱讀:159 作者:小新 欄目:系統運維

這篇文章主要介紹互聯網中安全和加密的示例分析,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

安全和加密

安全機制

信息安全防護的目標
保密性      Confidentiality
完整性      Integrity
可用性      Usability
可控制性    Controlability
不可否認性  Non-repudiation

安全防護環節
物理安全:各種設備/主機、機房環境
系統安全:主機或設備的操作系統
應用安全:各種網絡服務、應用程序
網絡安全:對網絡訪問的控制、防火墻規則
數據安全:信息的備份與恢復、加密解密
管理安全:各種保障性的規范、流程、方法

安全

安全: STRIDE
Spoofing 假冒 
    發郵件冒充
       telnet 127.0.0.1 25
       25端口為郵件工作端口,連接的軟件為Postfix,監聽ESMTP,對應25端口
       helo magedu.com
       mail from(以誰的身份發送):mayun@alibaba.com
       rcpt to(發送給誰):wang
       data(內容)
       以.結束
dig命令可以做名字解析
  -t 可以查到郵件服務器的地址,郵件地址的類型為mx
例: 
   dig  -t mx 163.com
   telnet 163mx00.mxmail.netease.com 25 即可連通網易郵箱
Tampering 篡改
Repudiation 否認
Information Disclosure 信息泄漏 (密碼泄露)
Denial of Service 拒絕服務
Elevation of Privilege 提升權限

安全設計基本原則

使用成熟的安全系統
以小人之心度輸入數據
外部系統是不安全的
最小授權
減少外部接口
缺省使用安全模式
安全不是似是而非
從STRIDE思考
在入口處檢查
從管理上保護好你的系統

安全算法

常用安全技術
    認證  
    授權
    審計
    安全通信

加密算法和協議
    對稱加密
    公鑰加密
    單向加密
    認證協議

對稱加密算法

對稱加密:加密和解密使用同一個密鑰 key1==key2
data明文 --->加密(key1)--->data'密文--->(key2)--->data

    DES:Data Encryption Standard,56bits
         (密鑰長度56位,7個字節,逐漸淘汰,不太.安全)
    3DES:將DES加密三次
    AES:Advanced (128, 192, 256bits)

    Blowfish,Twofish 商用
    IDEA,RC6,CAST5

特性:
    1、加密、解密使用同一個密鑰,效率高
    2、將原始數據分割成固定大小的塊,逐個進行加密
缺陷:
    1、密鑰過多
    2、密鑰分發
    3、數據來源無法確認

非對稱加密算法

key1 != key2
公鑰加密:密鑰是成對出現
    公鑰:公開給所有人;public key
    私鑰:自己留存,必須保證其私密性;secret key
特點:用公鑰加密數據,只能使用與之配對的私鑰解密;反之亦然
功能:
    數字簽名:主要在于讓接收方確認發送方身份
    對稱密鑰交換:發送方用對方的公鑰加密一個對稱密鑰后發送給對方
    數據加密:適合加密較小數據
缺點:密鑰長,加密解密效率低下
算法:
    RSA(加密,數字簽名)
    DSA(數字簽名)
    ELGamal

非對稱加密

public key 公鑰:公開
secret(private) key 私鑰:私有 

基于一對公鑰/密鑰對
    ?用密鑰對中的一個加密,另一個解密
實現加密:
    ?接收者
        生成公鑰/密鑰對:P和S
        公開公鑰P,保密密鑰S
    ?發送者
        使用接收者的公鑰來加密消息M
        將P(M)發送給接收者
    ?接收者
        使用密鑰S來解密:M=S(P(M))

alice(Pa,Sa)--->bob(Pb,Sb)
公鑰和私鑰成對使用,alice的公鑰私鑰成對使用,bob的公鑰私鑰成對使用
    一個數據用對應的公鑰加密,就必須用對應的成對的私鑰解密
    反過來,如果用對應的私鑰加密,就必須用成對的公鑰解密

理解:如果用alice的公鑰(Pa)加密,就必須用alice的私鑰(Sa)解密
      如果用alice的私鑰(Sa)加密,就必須用alice的公鑰(Pa)解密

非對稱加密

實現數字簽名:    私鑰加密 = 數字簽名(確認數據來源)
    ?發送者
        生成公鑰/密鑰對:P和S
        公開公鑰P,保密密鑰S
        使用密鑰S來加密消息M
        發送給接收者S(M)
?接收者
        使用發送者的公鑰來解密M=P(S(M))

結合簽名和加密
分離簽名
rpm -K /misc/cd/Packages/tree-1.6.0-10.e17.x86.64.rpm 檢查數據來源是否安全
每個公司發布包的時候都有數字簽名,進行了私鑰加密,
如果想要確定包的數據來源,就必須使用公鑰,進行解密
驗證包是由哪家公司發布的,系統默認沒有公鑰,需要導入

rpm --import /misc/cd/RPM-GPG-KEY-CentOS-7  導入公鑰
獲得公鑰以后即可驗證包的數字簽名

/etc/yum.repos.d/base.repo yum源配置文件中
gpgcheck=1 安裝某個包的時候要驗證包的數子簽名,=0則不檢查 
將密鑰的路徑寫進配置文件,第一次安裝包的時候,會導入密鑰

導入公鑰的兩種方式:
1. rpm --import   導入公鑰

2.在yum源配置文件中,添加gpgkey路徑

RSA和DSA

RSA:公鑰加密算法是1977年由Ron Rivest、Adi Shamirh和LenAdleman在(美國麻省理工學院)開發的,
RSA取名來自開發他們三者的名字,后成立RSA數據安全有限公司。
RSA是目前最有影響力的公鑰加密算法,它能夠抵抗到目前為止已知的所有密碼***,已被ISO推薦為公鑰數據加密標準。
RSA算法基于一個十分簡單的數論事實:將兩個大素數相乘十分容易,但那時想要對其乘積進行因式分解卻極其困難,
因此可以將乘積公開作為加密密鑰

DSA (Digital Signature Algorithm):1991年7月26日提交,并歸屬于David W. Kravitz前NSA員工,
DSA是Schnorr和ElGamal簽名算法的變種,被美國NIST作為SS(DigitalSignature Standard),
DSA是基于整數有限域離散對數難題的,其安全性與RSA相比差不多。
DSA只是一種算法,和RSA不同之處在于它不能用作加密和解密,也不能進行密鑰交換,只用于簽名,它比RSA要快很多

DSA只能實現數字簽名,無法實現數據加密

單向散列(單向hash算法)

將任意數據縮小成固定大小的“指紋”
    ?任意長度輸入
    ?固定長度輸出
    ?若修改數據,指紋也會改變(“不會產生沖突”)
    ?無法從指紋中重新生成數據(“單向”)

功能:數據完整性

常見算法
    md5: 128bits、sha1: 160bits、sha224 、sha256、sha384、sha512

常用工具
    ?md5sum | sha1sum [ --check ] file
        md5sum fstab > fstab.md5
        md5sum -checkfstab.md5 檢測md5值 
    ?openssl、gpg
    ?rpm -V  檢測包是否發生修改
hash(data) => digest 摘要 
hash算法得到的摘要,不可逆推回數據,單向的
數據如果不變,通過hash得到的摘要digest也是固定的
如果數據發生改變,得到的摘要則會發生改變
結論:
數據不同,摘要必不同
摘要相同,摘要必相同

固定的hash算法,得到的摘要也是固定大小(長度)
md5  128bit  數據不同128bit的值不同

hash算法 經常用來做數據完整性的檢查,檢查數據是否被更改

數字簽名

互聯網中安全和加密的示例分析

原文件利用hash運算(md5)得到128bit的數字摘要(hash值)
使用Sa加密得到的hash值,形成數字簽名,將原文附加在后面,得到完整的新的文件
使用Pb加密生成的新文件,得到密文,發送給對方  

確保無法被第三方截獲,并確認數據來源

使用Sb解密收到的密文,得到數字簽名和原文件
對原文件做hash運算(md5),得到128bit的數字摘要
使用Pa解密數字簽名,得到發送來的數字摘要
對比兩個數字摘要是否一致
一致,則原文沒有被篡改

即實現的數據的安全傳輸,又實現了數據來源的確認

綜合對稱加密,非對稱加密,和單向散列三種算法,實現加密

key{data +Sa[hash(data)]}+Pb(key) ==>

將數據做hash運算,得到數字摘要(digest)       # 單向散列hash算法 
使用a的私鑰將數字摘要(digest)做數字簽名     # 非對稱加密算法
使用對稱加密將原文數據和數字簽名進行加密    # 對稱加密算法
將對稱密鑰,使用b的公鑰進行加密

對方可以使用Sb解開對稱密鑰,得到對稱密鑰中的數據

應用程序:RPM

文件完整性的兩種實施方式
被安裝的文件
    ?MD5單向散列
    ?rpm --verify package_name (or -V)
發行的軟件包文件
    ?GPG公鑰簽名
    ?rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat*
    ?rpm --checksig pakage_file_name (or -K)

密鑰交換

密鑰交換:IKE( Internet Key Exchange )
    公鑰加密:
    DH (Deffie-Hellman):生成會話密鑰,由惠特菲爾德·迪菲(Bailey Whitfield Diffie)和馬丁·赫爾曼(Martin Edward Hellman)在1976年發表
參看:https://en.wikipedia.org/wiki/Diffie%E2%80%93Hellman_key_exchange

DH:
1>A: g,p 協商生成公開的整數g, 大素數p
  B: g,p

2>A:生成隱私數據 :a (a<p ),計算得出 g^a%p,發送給B
  B:生成隱私數據 :b,計算得出 g^b%p,發送給A

3>A:計算得出 [(g^b%p)^a] %p = g^ab%p,生成為密鑰
  B:計算得出 [(g^a%p)^b] %p = g^ab%p,生成為密鑰

使用gpg實現對稱加密

對稱加密file文件
    gpg -c file  對文件進行加密
    ls file.gpg  生成加密文件
在另一臺主機上解密file
    gpg -o file -d file.gpg

使用gpg工具實現公鑰加密

在hostB主機上用公鑰加密,在hostA主機上解密
在hostA主機上生成公鑰/私鑰對
    gpg --gen-key
在hostA主機上查看公鑰
    gpg --list-keys
在hostA主機上導出公鑰到wang.pubkey
    gpg -a --export -o wang.pubkey
從hostA主機上復制公鑰文件到需加密的B主機上
    scp wang.pubkey hostB:

使用gpg工具實現公鑰加密

在需加密數據的hostB主機上生成公鑰/私鑰對
    gpg --list-keys
    gpg --gen-key
在hostB主機上導入公鑰
    gpg --import wang.pubkey
    gpg --list-keys
用從hostA主機導入的公鑰,加密hostB主機的文件file,生成file.gpg
    gpg -e -r wangxiaochun file
    file file.gpg

使用gpg工具實現公鑰加密

復制加密文件到hostA主機
    scp fstab.gpg hostA:
在hostA主機解密文件
    gpg -d file.gpg
    gpg -o file -d file.gpg
刪除公鑰和私鑰
    gpg --delete-keys wangxiaochun
    gpg --delete-secret-keys wangxiaochun

中間人

互聯網中安全和加密的示例分析

CA和證書

PKI:Public Key Infrastructure
    簽證機構:CA(Certificate Authority)
    注冊機構:RAc 中間人,他會幫你把申請的證書提交給真正的CA
    證書吊銷列表:CRL
    證書存取庫:
X.509:定義了證書的結構以及認證協議標準
    版本號           主體公鑰
    序列號           CRL分發點
    簽名算法         擴展信息
    頒發者           發行者簽名
    有效期限
    主體名稱

證書獲取

證書類型:
    證書授權機構的證書
    服務器
    用戶證書
獲取證書兩種方法:
?使用證書授權機構
    生成證書請求(csr)
    將證書請求csr發送給CA
    CA簽名頒發證書
?自簽名的證書
    自已簽發自己的公鑰

互聯網中安全和加密的示例分析

A將公鑰Pa發送給CA,CA驗證身份,成功會用自己的私鑰簽名公鑰Sca(Pa)
并追加信息:CA的信息,A的信息和有限期 得到證書,將證書發送給A,A從而有了證書
A和B事先已經拿到了CA的公鑰

互聯網中安全和加密的示例分析
所有的機器都必須有rootCA的公鑰,rootCA進行自簽名Srootca(Prootca)+Prootca,自己證明自己

安全協議

SSL:Secure Socket Layer,TLS: Transport Layer Security
    1995:SSL 2.0 Netscape
    1996:SSL 3.0
    1999:TLS 1.0 國際規范
    2006:TLS 1.1 IETF(Internet工程任務組) RFC 4346
    2008:TLS 1.2 當前使用
    2015:TLS 1.3
    功能:機密性,認證,完整性,重放保護

兩階段協議,分為握手階段和應用階段
    握手階段(協商階段):客戶端和服務器端認證對方身份(依賴于PKI體系,利用數字證書進行身份認證),并協商通信中使用的安全參數、密碼套件以及主密鑰。后續通信使用的所有密鑰都是通過MasterSecret生成
    應用階段:在握手階段完成后進入,在應用階段通信雙方使用握手階段協商好的密鑰進行安全通信

SSL/TLS

互聯網中安全和加密的示例分析  

SSL/TLS工作在應用層和傳輸層中間,把應中層數據加密,到達傳輸層的時候已經被加密了

SSL/TLS

Handshake協議:包括協商安全參數和密碼套件、服務器身份認證(客戶端身份認證可選)、密鑰交換
ChangeCipherSpec 協議:一條消息表明握手協議已經完成
Alert 協議:對握手協議中一些異常的錯誤提醒,分為fatal和warning兩個級別,fatal類型錯誤會直接中斷SSL鏈接,而warning級別的錯誤SSL鏈接仍可繼續,只是會給出錯誤警告
Record 協議:包括對消息的分段、壓縮、消息認證和完整性保護、加密等
HTTPS 協議:就是“HTTP 協議”和“SSL/TLS 協議”的組合。HTTP over SSL”或“HTTP over TLS”,對http協議的文本數據進行加密處理后,成為二進制形式傳輸

HTTPS結構

互聯網中安全和加密的示例分析

HTTPS工作過程

互聯網中安全和加密的示例分析

OpenSSL

OpenSSL:開源項目
三個組件:
    openssl:多用途的命令行工具,包openssl
    libcrypto:加密算法庫,包openssl-libs
    libssl:加密模塊應用庫,實現了ssl及tls,包nss
openssl命令:
    兩種運行模式:交互模式和批處理模式
    openssl version:程序版本號
    標準命令、消息摘要命令、加密命令
    標準命令:enc, ca, req, ...

openssl命令

對稱加密:
    工具:openssl enc, gpg
    算法:3des, aes, blowfish, twofish
enc命令:
幫助:man enc
加密:
openssl enc -e -des3 -a -salt -in testfile -out testfile.cipher
解密:
openssl enc -d -des3 -a -salt –in testfile.cipher -out testfile
openssl ?

-a base64編碼
salt 鹽:將密碼順序打亂,隨機生成(也可指定),再進行加密
-in 跟加密文件
-out 跟輸出結果
例:加密
openssl enc -e -des3 -a -salt -in f1.txt -out f1.txt.enc

openssl命令

單向加密:
工具:md5sum, sha1sum, sha224sum,sha256sum…
    openssl dgst
dgst命令:
    幫助:man dgst
    openssl dgst -md5 [-hex默認] /PATH/SOMEFILE
    openssl dgst -md5 testfile   生成摘要
    md5sum /PATH/TO/SOMEFILE
MAC: Message Authentication Code,單向加密的一種延伸應用,用于實現網絡通信中保證所傳輸數據的完整性機制
CBC-MAC
    HMAC:使用md5或sha1算法

生成用戶密碼:
    passwd命令:
    幫助:man sslpasswd
    openssl passwd -1 -salt SALT(最多8位)
    openssl passwd -1 –salt centos

生成隨機數:
    幫助:man sslrand
    openssl rand -base64|-hex NUM
    NUM: 表示字節數,使用-hex,每個字符為十六進制,相當于4位二進制,出現的字符數為NUM*2

公鑰加密:
    算法:RSA, ELGamal
    工具:gpg, openssl rsautl(man rsautl)
數字簽名:
    算法:RSA, DSA, ELGamal
密鑰交換:
    算法:dh
    DSA:Digital Signature Algorithm
    DSS:Digital Signature Standard
    RSA:

openssl命令

生成密鑰對兒:man genrsa  生成RSA公鑰私鑰對
生成私鑰
    openssl genrsa -out /PATH/TO/PRIVATEKEY.FILE NUM_BITS
                    輸出一個私鑰文件,要求指定私鑰程度(位數)
    (umask 077; openssl genrsa –out test.key –des 2048) 使用對稱密鑰生成口令
    例: (umask 066;openssl genrsa -out app.key -des 1024)
         -des 生成密鑰的的密碼,忘記無法破解,可以重新生成

    openssl rsa -in test.key –out test2.key 將加密key解密
        例:openssl rsa -in app.key  -out app1.key

從私鑰中提取出公鑰
    openssl rsa -in PRIVATEKEYFILE –pubout –out PUBLICKEYFILE
    openssl rsa –in test.key –pubout –out test.key.pub  
        例:openssl rsa -in app.key -pubout -out app.key.pub

隨機數生成器:偽隨機數字
    鍵盤和鼠標,塊設備中斷
    /dev/random:僅從熵池返回隨機數;隨機數用盡,阻塞
    /dev/urandom:從熵池返回隨機數;隨機數用盡,會利用軟件生成偽隨機數,非阻塞

OpenSSL

PKI:Public Key Infrastructure
    CA
    RA
    CRL
    證書存取庫
建立私有CA:
    OpenCA
    openssl
證書申請及簽署步驟:
    1、生成申請請求
    2、RA核驗
    3、CA簽署
    4、獲取證書

創建CA和申請證書

創建私有CA:
    openssl的配置文件:/etc/pki/tls/openssl.cnf
    三種策略:match    匹配
              optional 可選
              supplied 提供

    match:要求申請填寫的信息跟CA設置信息必須一致
    optional:可有可無,跟CA設置信息可不一致
    supplied:必須填寫這項申請信息,

1、創建所需要的文件
    touch /etc/pki/CA/index.txt 生成證書索引數據庫文件
    echo 01 > /etc/pki/CA/serial 指定第一個頒發證書的序列號

2、 CA自簽證書
    生成私鑰
    cd /etc/pki/CA/
    (umask 066; openssl genrsa -out private/cakey.pem 2048)

生成自簽名證書
    openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem
    -days 3650 -out /etc/pki/CA/cacert.pem
選項說明:
    -new: 生成新證書簽署請求
    -x509:專用于CA生成自簽證書
    -key: 生成請求時用到的私鑰文件
    -days n:證書的有效期限
    -out /PATH/TO/SOMECERTFILE: 證書的保存路徑

3、頒發證書
在需要使用證書的主機生成證書請求
    給web服務器生成私鑰
    (umask 066; openssl genrsa –out /data/test.key 2048)
    生成證書申請文件
    openssl req -new -key /data/test.key -out /data/test.csr

將證書請求文件傳輸給CA
CA簽署證書,并將證書頒發給請求者
    openssl ca -in /tmp/test.csr –out /etc/pki/CA/certs/test.crt -days 100
    注意:默認要求 國家,省,公司名稱三項必須和CA一致

查看證書中的信息:
    openssl x509 -in /PATH/FROM/CERT_FILE -noout -text|issuer|subject|serial|dates
    openssl ca -status SERIAL 查看指定編號的證書狀態

4、吊銷證書
    在客戶端獲取要吊銷的證書的serial
    openssl x509 -in /PATH/FROM/CERT_FILE -noout -serial -subject

在CA上,根據客戶提交的serial與subject信息,對比檢驗是否與index.txt文件中的信息一致,吊銷證書:
openssl ca -revoke /etc/pki/CA/newcerts/SERIAL.pem

指定第一個吊銷證書的編號,注意:第一次更新證書吊銷列表前,才需要執行
    echo 01 > /etc/pki/CA/crlnumber
更新證書吊銷列表
    openssl ca -gencrl -out /etc/pki/CA/crl.pem
查看crl文件:
    openssl crl -in /etc/pki/CA/crl.pem -noout -text

搭建CA架構實操

實驗前準備:
1.SELINUX關閉
2.IPTAB關閉
3.時間校驗

使用openssl搭建CA
搭建完成用戶向CA申請證書 

vim /etc/pki/tls/openssl.cnf   文件詳細配置
openssl的范例配置文件
一臺電腦可以搭建多個CA

[ ca ]            #為默認CA
default_ca      = CA_default 

[ CA_default ]   #定義默認CA的相關信息

dir             = /etc/pki/CA       # 默認CA中相關數據的存放路徑,dir為變量指的路徑
certs           = $dir/certs        # 存放發布的證書
crl_dir         = $dir/crl          # 存放證書吊銷的列表的文件
database        = $dir/index.txt    # 存放索引,數據庫 (需要手工創建)

new_certs_dir   = $dir/newcerts     # 存放新證書路徑,新頒發的證書,存放在此目錄

certificate     = $dir/cacert.pem   # CA自己的證書,rootCA只能自簽名
serial          = $dir/serial       # 當前序列號,每頒發一個證書都要給它加編號,
                                    # 下一個證書頒發的編號到幾了,寫到此文件
                                    # 需要手動創建 
crlnumber       = $dir/crlnumber    # 證書吊銷列表的編號

crl             = $dir/crl.pem           # 證書吊銷列表的文件存放的路徑
private_key     = $dir/private/cakey.pem # CA私鑰存放路徑
RANDFILE        = $dir/private/.rand     # 隨機數

default_days    = 365                   # 證書默認有效期
default_crl_days= 30                    # CRL吊銷列表有效值
default_md      = sha256                # 默認hash算法
preserve        = no

policy          = policy_match          #頒發證書的策略

[ policy_match ]    定義頒發證書的策略

搭建CA的時候,需要提交CA的相關信息
countryName             = match         # 國家  
stateOrProvinceName     = match         # 省份
organizationName        = match         # 組織(公司名)
organizationalUnitName  = optional      # 部門
commonName              = supplied      # 服務器名稱或網站域名
emailAddress            = optional      # 郵箱

國家,省份,組織 三項申請用戶必須和CA保持一致

[ policy_anything ]  可選,可一樣可不一樣
CA服務器

1.創建所需的文件
  touch /etc/pki/CA/index.txt 生成證書索引數據庫文件
  echo 01 > /etc/pki/CA/serial 指定第一個頒發證書的序列號

2.CA自簽證書,生成私鑰
  cd /etc/pki/CA/
  (umask 066;openssl genrsa -out private/cakey.pem 2048) #生成私鑰文件

3.利用私鑰,給自己生成一個自簽名的證書
  openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3650
  req   表示申請 
  -new  新證書
  -x509 加x509    表示自簽名,不加表示普通證書
  -key  private/cakey.pem  指定私鑰
  -out  cacert.pem         生成的證書路徑
  -days 3650    有效期

  寫入國家兩個字符:CN
  省份:beijing
  城市:beijing
  公司:adong
  部門:devops
  服務器名稱:ca.adong.com
  郵箱:...

 用戶申請證書
 1.生成私鑰
   cd /data/app
   (umask 077;openssl genrsa -out app.key 1025)

 2.利用私鑰生成證書申請文件
   openssl req -new -key app.key -out app.csr

   申請內容 國家,省份和公司必須和CA保持一致
   國家:CN
   省份:beijing 
   城市:bj
   公司:adong
   部門:devops
   服務:app.adong.com
   ...

 3.將用戶申請的證書文件上傳到CA服務器
   scp app.csr root@192.168.38.100:/etc/pki/CA

 4.CA給用戶頒發證書
   openssl ca -in app.csr -out certs/app.crt -day 100
   ca 頒發證書
   -in app.csr 證書申請文件
   -out certs/app.crt 最終生成的證書,放在/etc/pki/CA/certs目錄下  (crt證書文件)

   確定提交信息,是否正確,正確y回車即可

 5.驗證證書是否有效
   openssl ca -status 01
    Using configuration from /etc/pki/tls/openssl.cnf
    01=Valid (V)  #V表示有效
系統默認不允許一個用戶申請多個證書

cat /etc/pki/CA/index.txt.attr
unique_subject = yes  #唯一的申請主題
                      #意思是一個主機只能申請一個證書
改為no,即可申請多個證書

在CA主機申請證書
(umask 077;openssl genrsa -out app2.key 1024)
openssl req -new -key app2.key -out app2.csr
openssl ca -in app2.csr -out /etc/pki/CA/certs/app2.crt -days 100

cat /etc/pki/CA/index.txt
V   191210091002Z       01  unknown /C=CN/ST=beijing/O=adong/OU=devops/CN=app.adong.com
V   191210111559Z       02  unknown /C=CN/ST=beijing/O=adong/OU=devops/CN=ca.app2.com

吊銷證書
openssl ca -revoke /etc/pki/CA/newcerts/02.pem

cat /etc/pki/CA/index.txt
V   191210091002Z       01  unknown /C=CN/ST=beijing/O=adong/OU=devops/CN=app.adong.com
R   191210111559Z   190901111924Z   02  unknown /C=CN/ST=beijing/O=adong/OU=devops/CN=ca.app2.com

或者使用命令驗證
openssl ca -status 02
Using configuration from /etc/pki/tls/openssl.cnf
02=Revoked (R)

被吊銷的證書改為Revokde(R)

需要生成公開的證書吊銷列表,通知其他用戶此證書已被吊銷

創建證書吊銷列表目錄
echo 01 > /etc/pki/CA/crlnumber
更新證書吊銷列表
openssl cs -gencrl -out /etc/pki/CA/crl.pem

以上是“互聯網中安全和加密的示例分析”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梅河口市| 嫩江县| 永善县| 会理县| 东乡族自治县| 新邵县| 应城市| 松滋市| 图们市| 汉中市| 马山县| 桃江县| 清苑县| 万州区| 亳州市| 沙田区| 三台县| 平凉市| 南城县| 大厂| 大名县| 信宜市| 岚皋县| 时尚| 社会| 鲁甸县| 榆林市| 仁化县| 钟山县| 新泰市| 龙州县| 海盐县| 平湖市| 通州市| 南京市| 嵊州市| 沧源| 沾化县| 吉林市| 麻江县| 祁东县|