我有一個可用的OpenSSL RSA引擎(即.so
文件)和一個在SSL模式下配置的Apache服務器。
如何讓Apache使用RSA引擎實現RSA?換句話說:我在哪裏放引擎(.so
文件),我該如何修改openssl.cnf
文件,以及如何構建Apache?將Apache服務器配置爲使用特定的OpenSSL引擎
回答
的步驟,爲我工作:從源
1.安裝OpenSSL的,運行./config
1.1.Create /建立你的OpenSSL引擎和它添加到您的openssl.cnf
文件
2.安裝的httpd時指定-DOPENSSL_LOAD_CONF
源,使用以下命令:
CFLAGS='-DSSL_EXPERIMENTAL_ENGINE -DSSL_ENGINE -DOPENSSL_LOAD_CONF' ./configure --enable-ssl --with-ssl=/usr/local/ssl --with-pcre=/usr/local/pcre --enable-so
make
make install
2.1.Edit httpd-ssl.conf
加入SSLCryptoDevice engine_id
,並確保執行$ openssl engine
時,engine_id
說明符出現在列表中。此外,您必須創建自簽名證書和私鑰,修改httpd.conf
文件,但這不是此問題的主題。搜索:如何在Apache上配置HTTPS。
3. $ httpd -k restart
就是這樣。
EDIT
.so
文件(Openssl的ENGINE)的地方必須在openssl.cnf
指定。
首先,我不完全理解你的問題。我假定你的意思是你的系統上安裝了Apache正在使用的OpenSSL版本,並且你想使用另外一個(也許是後來的版本),你也下載並安裝了這個版本?
這真的取決於該平臺(Windows或Linux),你怎麼安裝的Apache(預裝系統,通過的軟件包管理器像百勝或易於得到,或者手動從源代碼安裝)。
像Windows安裝和軟件包管理器那樣的預先構建的軟件包傾向於使用系統默認的SSL庫,並且不是最容易改變的(儘管我對它們都不太熟悉)。
因此,最簡單的方法是從源代碼而不是從預編譯的軟件包安裝Apache。
您通常需要使用make來構建你的代碼之前設置這個在編譯時,下載源後,使用--with-SSL選項來配置:
./configure --with-ssl=/usr/local/ssl --enable-ssl --enable-so
如果您還沒有安裝從源頭之前,這可能有點嚇人。我在HTTP2的博客文章中給出了關於如何從Linux上的源代碼下載和安裝最新的OpenSSL和Apache的詳細說明:https://www.tunetheweb.com/performance/http2/,但在您的特定平臺上可能會有更好的選擇。
我不認爲我理解得很好。所以當我嘗試安裝Apache時,我應該使用你在上面的答案中陳述的內容。 –
我擴大了我的答案。 –
我不想使用不同的OpenSSL版本。我只想集成一個[OpenSSL引擎](https://www.openssl.org/docs/manmaster/crypto/engine.html),以便使用不同的RSA算法實現。 –
- 1. 配置的app.yaml應用服務引擎
- 2. Bugzilla Apache服務器配置
- 3. Apache Vysper服務器配置?
- 4. 使用tomcat 7配置mod_proxy apache https服務器https服務器
- 5. 配置Apache Web服務器以使用代理服務器
- 6. 應用服務引擎工作Maven3配置+ DataNucleus將+ JPA 2
- 7. 將HG配置爲對特定服務器使用未壓縮傳輸
- 8. 休眠,服務器特定配置
- 9. Web服務器使用OpenSSL
- 10. BPM引擎與BPM引擎服務器
- 11. Apache Web服務器的配置問題
- 12. 使用Grizzly作爲Web服務引擎
- 13. 在Apache服務器上使用OpenSSL的Single SignOn
- 14. 使用smtp參數配置谷歌應用程序引擎生產服務器
- 15. 使用Google Apps引擎的外部SMTP服務器/服務
- 16. apache服務器配置代理
- 17. 如何配置Apache Tomcat服務器
- 18. Apache服務器配置虛擬主機
- 19. 下載apache服務器配置
- 20. 如何爲Net :: HTTP使用自定義OpenSSL引擎
- 21. 如何爲Web服務配置apache mod_rewrite
- 22. Apache服務器(xampp)在使用openssl函數時崩潰
- 23. 使用谷歌應用程序引擎作爲SMTP服務器
- 24. 將sinatra配置爲服務器
- 25. 如何禁用openssl引擎?
- 26. Apache服務器配置多個Apache Tomcat應用
- 27. Apache配置。 Magento您的網絡服務器配置不正確
- 28. 如何將Web服務器配置爲將特定頁面作爲默認頁面進行服務?
- 29. 在Windows 7上設置Apache服務器(特別是使用SSI)
- 30. 使用Angular4作爲服務器端渲染引擎
[在Unix和Linux Stack Exchange上通過mod_ssl在Apache中運行時自定義OpenSSL引擎](http://unix.stackexchange.com/q/180343)和[通過engine_pkcs11和OpenSSL將Apache與PKCS#11設備集成] (http://serverfault.com/q/711580)在服務器故障。 – jww
嗨jww,我已經閱讀過你提供的第一個鏈接,但我不知道如何修改'openssl.cnf'文件。你認爲[this](https://www.openssl.org/docs/manmaster/apps/config.html)會是一個好的開始嗎? –
@jww我修改了'openssl。cnf'文件,並按照我在前面的評論中提供的鏈接中所述添加了我的引擎。 [Apache文檔](http://httpd.apache.org/docs/current/mod/mod_ssl.html#sslcryptodevice)說:「要發現支持哪些引擎名稱,運行命令」openssl engine「」,但我的引擎ID不會出現在列表中。我怎樣才能解決這個問題? –