Network Security Services
Network Security Services(NSS)是一組旨在支持跨平台開發具有安全功能的客户端和伺服器應用程式的庫。
使用NSS構建的應用程式可以支持SSL v2和v3、TLS、PKCS #5、PKCS #7、PKCS #11、PKCS #12、S/MIME、X.509 v3證書以及其他安全標準。
許多軟件包都需要NSS,包括,例如,Chromium和Firefox。
安裝[編輯 | 編輯原始碼]
用法[編輯 | 編輯原始碼]
使用NSS提供的certutil工具來管理你的證書。
列出證書數據庫[編輯 | 編輯原始碼]
要獲得所有證書的列表。
$ certutil -d sql:$HOME/.pki/nssdb -L
要獲得證書的詳細信息。
$ certutil -d sql:$HOME/.pki/nssdb -L -n certificate_nickname
生成一個RSA私鑰[編輯 | 編輯原始碼]
$ certutil -G -d database_directory -g keysize -n nickname
生成一個證書籤名請求[編輯 | 編輯原始碼]
$ certutil -S -s subject -n nickname -x -t C,C,C -o file
生成一個自簽名的證書[編輯 | 編輯原始碼]
$ certutil -S -s subject -n nickname -x -t C,C,C -o file
導入證書[編輯 | 編輯原始碼]
要添加一個證書,請指定-A
選項。
$ certutil -d sql:$HOME/.pki/nssdb -A -t "'TRUSTARGS'" -n certificate_nickname -i /path/to/cert/filename
TRUSTARGS
是由零個或多個字母組成的三個字符串,用逗號分隔,例如,"TCu,Cu,Tuw"
。它們定義了證書在SSL、電子郵件和對象簽名中應如何被信任,在certutil documentation或Meena's blog post中對信任標誌進行了解釋。
要為SSL客户認證添加個人證書和私鑰,請使用以下命令。
$ pk12util -d sql:$HOME/.pki/nssdb -i /path/to/PKCS12/cert/filename.p12
這將導入一個存儲在PKCS #12文件中的個人證書和私鑰。個人證書的TRUSTARGS
將被設置為"u,u,u"
。
編輯證書[編輯 | 編輯原始碼]
使用-M
選項調用certutil來編輯證書。例如,要編輯TRUSTARGS
。
$ certutil -d sql:$HOME/.pki/nssdb -M -t "'TRUSTARGS'" -n certificate_nickname
刪除證書[編輯 | 編輯原始碼]
使用-D
選項來刪除證書。
$ certutil -d sql:$HOME/.pki/nssdb -D -n certificate_nickname
添加一個受信任的CA證書[編輯 | 編輯原始碼]
chromium包、firefox包、thunderbird包、evolution包和seamonkey包使用NSS檢索可信的CA證書。
nss包已經集成p11-kit包,它將使用system-wide自動安裝所有證書。但如果你更喜歡分發 "純淨" NSS,可以將證書安裝到你自己的瀏覽器配置文件中。
certutil -d database -A -i myCA.cert -n "Honest Achmed's CA" -t C, 。
chromium包和evolution包使用一個位於-d "sql:$HOME/.pki/nssdb"
的 "共享式" 數據庫。
對於firefox包、thunderbird包和seamonkey包,要制定瀏覽器專用的配置文件目錄(例如-d ~/.mozilla/firefox/ov6jazas.default
)。