openwrt Signing key has not been configured解決方法

在編譯openwrt源碼的時候make V=s 提示openwrt出現Signing key has not been configured解決辦法
編譯出現提示如下:
Generating index for package ./uhttpd_2014-10-27-fd8e5e379c23c5fbcec3e76894b839233df09067_ramips_24kec.ipk
Generating index for package ./watchdog_1_ramips_24kec.ipk
Generating index for package ./wireless-tools_29-5_ramips_24kec.ipk
Signing key has not been configured
 
是因爲增加包簽名,可以查看下面鏈接中,對增加這一功能的描述
https://dev.openwrt.org/changeset/38284
上面有這樣說Add package signing key and certificate configuration options to the
"Image configuration" submenu.  
這是因爲在使用一些軟件包的時候需要簽名身份驗證,因爲沒有提供相關的信息所有會報錯
只需要製作一個簽名和證書加入到"Image configuration" 的子目錄即可,下面是自己製作簽名和證書過程

1.安裝openssl
首先得安裝OpenSSL軟件包openssl,安裝了這個軟件包之後,我們可以做這些事情:
  o  Creation of RSA, DH and DSA Key Parameters # 創建密鑰 key
  o  Creation of X.509 Certificates, CSRs and CRLs # 創建證書
  o  Calculation of Message Digests                #
  o  Encryption and Decryption with Ciphers # 加密、解密
  o  SSL/TLS Client and Server Tests        # SSL 服務器端/客戶端測試
  o  Handling of S/MIME signed or encrypted Mail  # 處理簽名或加密了的郵件
 
2、生成RSA密鑰的方法

openssl genrsa -des3 -out privkey.pem 2048
這個命令會生成一個2048位的密鑰,同時有一個des3方法加密的密碼,如果你不想要每次都輸入密碼,可以改成:
openssl genrsa -out privkey.pem 2048
建議用2048位密鑰,少於此可能會不安全或很快將不安全。

3、生成一個證書請求(輸入指令後一步步輸入相關信息即可)
openssl req -new -key privkey.pem -out cert.csr
這個命令將會生成一個證書請求,當然,用到了前面生成的密鑰privkey.pem文件
這裏將生成一個新的文件cert.csr,即一個證書請求文件,你可以拿着這個文件去數字證書頒發機構(即CA)申請一個數字證書。CA會給你一個新的文件cacert.pem,那纔是你的數字證書。

如果是自己做測試,那麼證書的申請機構和頒發機構都是自己。就可以用下面這個命令來生成證書:
openssl req -new -x509 -key privkey.pem -out cacert.pem -days 1095
這個命令將用上面生成的密鑰privkey.pem生成一個數字證書cacert.pem
生產的文件如下


4、使用數字證書和密鑰
有了privkey.pem和cacert.pem文件後就可以在自己的程序中使用了,比如做一個加密通訊的服務器
當執行make menuconfig 選擇image configuration (必選),按Y鍵,回車,就能
看見關於密匙的配置了
 

回車後 選擇package signing options


進入package signing options 選項,填入前面生產證書的完整路徑,並選中wait for paaphrase when signing package
 


5.重新編譯軟件
make V=s


可以看到Signing key has not been configured不再出現,而是signing package index ,使用的相關軟件會自動的完成簽名。

end!
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章