我已經創建了證書頒發機構,需要生成並簽署50個以上的證書。我想編寫這個過程。我不想手動輸入密碼100次以上!腳本openssl生成許多證書,而無需手動輸入密碼?
下面是我漸漸掛了命令:
openssl req -newkey rsa:1024 -keyout ~/myCA/tempkey.pem -keyform PEM -out ~/myCA/tempreq.pem -outform PEM
的問題是,它要我創建這些提示密碼:
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
當我剛剛被要求要輸入密碼,我可以使用openssl
的-passin pass:mypass
命令行選項。但是這似乎不適用於創建密碼。
而且,它似乎很奇怪的是,當後來我剛剛結束了與刪除它需要密碼:
openssl rsa <tempkey.pem> server_key.pem
我試圖創建一個簡單的Ruby腳本:
require 'open3'
Open3.popen2("openssl req -newkey rsa:1024 -keyout ~/myCA/tempkey.pem -keyform PEM -out ~/myCA/tempreq.pem -outform PEM") {|i,o,t|
i.puts "mySecretPassword"
i.puts "mySecretPassword"
}
但這並不似乎也有效。我仍然以手動提示要求我創建密碼。
在ruby的標準庫中有一個OpenSSL類。嘗試使用:http://www.ruby-doc.org/stdlib-1.9.3/libdoc/openssl/rdoc/OpenSSL.html我現在不能寫一個完整的示例,但我會嘗試這樣做以後如果我找到時間的話。 – Speed 2013-03-13 08:28:17