天天看點

OpenSSL指令行工具

  資料的加密解密對于Linux系統來說,是至關重要的一個概念,必須懂的對資料進行保護,上次我們詳細說了關于資料加密的種種方式,如公鑰加密,單向加密,密鑰交換等,以及認證機構CA的存在;而OpenSSL指令就是一個可以幫助我們實作公鑰加密,建立私鑰,并根據私鑰建立出公鑰;還可以進行單向加密,生成随機數,對使用者的密碼進行加密操作;還有一點,就是可以利用OpenSSL自己認證生成私人CA,使用者可以根據OpenSSL指令生成CA請求證書,并将此證書發給有公信力的CA進行認證,産生一個CA憑證用來證明使用者;

  openssl enc:加密解密指令,可以指定加密算法加密檔案;

   in filename:加密檔案路徑;

   out filename:輸出的加密檔案路徑;

   -ciphername:算法名稱,des3,des,aes,rc4;

   -e:加密;

   -d:解密;

   -a/-base64:純文字格式的加密;

   -salt:随機鹽;

  加密執行個體:

  解密執行個體:

  openssl rand:生成随機數

   -hex:生成十六進制的随機數;

   -base64:生成純文字格式的随機數;

   執行個體:

  openssl dgst:單向加密,隻能加密,不能解密;

   -ciphername:指定單向加密算法,sha,md5等;

  openssl passwd:使用者密碼加密;

   openssl passwd -1 -salt (鹽可自寫)

    openssl passwd [-1] [-salt string]

    執行個體:

 openssl genrsa:公鑰加密,首先建立私鑰;

   -out filename:将私鑰放入檔案中;

   私鑰檔案最好是将權限設定為600,這樣其他使用者就無法通路修改,隻有建立這個私鑰檔案的使用者  可以通路修改;

  設定權限:

  openssl rsa:根據私鑰檔案生成公鑰

  一個私鑰隻能生成同一種公鑰,除非私鑰檔案遭到修改,否則公鑰檔案不會産生變化;

   -in filename:私鑰檔案作為輸入;

   -out filename:公鑰檔案作為輸出;

  建立私有的CA

  建立一個私有的CA檔案首先要建立幾個固定的CA配置檔案,這些配置檔案都是在CA專有的配置檔案中有對應的位置的,如果要修改檔案名的話,也要将CA專有的配置檔案/etc/pki/tls/openssl.cnf中的檔案名;

  目錄級檔案:

   /etc/pki/CA/certs

   /etc/pki/CA/newcerts

   /etc/pki/CA/crl

  文本級檔案:

   /etc/pki/CA/index.txt

   /etc/pki/CA/serial

  需要在檔案serial中輸入01,其餘檔案如果沒有就建立,放空即可;

  CA建立的公鑰私鑰必須放在指定路徑下的檔案中;

  公鑰:/etc/pki/CA/cacert.pem

  私鑰:/etc/pki/private/cakey.pem

  建立CA私鑰:

  生成自檢的證書

  openssl req -new -x509 -key filename -out filename

  -new:生成一個新的證書;

  -x509:當是CA生成這個自簽證書時使用x509;

  -key:CA的私鑰;

  -out filename:輸出的公鑰檔案即自簽證書;

  -days:自簽證書的有效期限,以天為機關;

  執行個體:

  CA對外來使用者的證書申請,需要經過嚴格的稽核,而在稽核過後,CA就可以通過openssl ca來對使用者簽發證書,證書完成後,發送給使用者即可;

  使用者的證書申請的生成也同CA的證書生成一樣,都是使用openssl req生成的;

  使用者将自己生成的證書,發送給CA

  openssl ca -in 使用者證書路徑 -out 生成的使用者證書路徑 -days 有效期限

本文轉自 wujunqi1996 51CTO部落格,原文連結:http://blog.51cto.com/12480612/1954607

繼續閱讀