Apache+SSL Howto譯文
為了能讓Apache加入SSL支持我們需要編輯
/etc/apache/httpd.conf 文件并且滾動到文件的最下部。
在這里去掉如下的注釋。
把如下行:
#Include /etc/apache/mod_ssl.conf
更改為:
Include /etc/apache/mod_ssl.conf
注意:
如上的處理方法是建立在你的發行版已經安裝有mod_ssl和httpd的基礎之上的。如果你是從源代碼編譯安裝而來或你的發行版不包括這兩個軟件包,這篇文章就不適合你啦。
一旦完成上一步之后你需要見到的編輯一下文件
/etc/rc.d/rc.httpd
讓apache服務器知道你想開啟有SSL支持的服務。
把如下行:
'start')
/usr/sbin/apachectl start ;;
更改為:
'start')
/usr/sbin/apachectl startssl ;;
現在所有剩余的工作就設置SSL證書了,如果你不在意非要使用正式的證書的話,slackware自帶了一些預設好的證書,我就用這個,但是如果你運行一個真正的生產環境中的web服務器的話,有很可能想付費并且獲得一個真正的證書。你也可以選擇制作自己的自簽名的證書,如果你對這個感興趣的話,在這篇 Howto文章的最底部有相應的說明。我們仍然運行如下的命令使用預設的證書,當問及是否覆蓋時,選擇是。
cp /etc/apache/ssl.crt/snakeoil-rsa.crt /etc/apache/ssl.crt/server.crt
cp /etc/apache/ssl.key/snakeoil-rsa.key /etc/apache/ssl.key/server.key
現在所要做的事情就是重新啟動apache 服務器了:
/etc/rc.d/rc.httpd restart
如果你想確認SSL現在已經正確的運行了,可以執行如下命令。
netstat -tpan | grep 443
如果一切運行正常,你會得到像下面的輸出:
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 27426/httpd
如果你沒有獲得任何的輸出,那么無論如何是出錯了然后你需要看看
/var/log/apache/error_log
文件啦。
現在SSL就完全建立起來了,下面你將要告訴apache當有人用https://訪問的時候應該提供什么內容,這需要通過VirtualHost指令來實現,并且與SSL連接相關的的配置可以在文件
/etc/apache/mod_ssl.conf中找到。默認情況下它是如下樣子的,而且你應當需要該其中的一些配置的。
# General setup for the virtual host
DocumentRoot "/var/www/htdocs"
ServerName new.host.name
ServerAdminyou@your.address
ErrorLog /var/log/apache/error_log
TransferLog /var/log/apache/access_log
最后,如果你想制作你自己的自簽名的證書,不使用slackware預先提供的,其實也是很容易的。我從http://www.apache-ssl.org/#FAQ找到如下命令:
第一步,創建key和request:
openssl req -new > new.cert.csr
第二步,從key中刪除passphrase(可選):
openssl rsa -in privkey.pem -out new.cert.key
第三步,把request轉換成signed sert:
openssl x509 -in new.cert.csr -out new.cert.cert -req -signkey new.cert.key -days 1825
第四步,把cert和key文件拷貝到適當的位置。
cp new.cert.cert /etc/apache/ssl.crt/server.crt
cp new.cert.key /etc/apache/ssl.key/server.key
一些注釋:
當在第一步被問及Common Name的時候,請輸入你的web服務器的完全限定域名(FQDN)例如:www.mywebserver.com
當在第一步被問及A challenge password的時候,直接按回車繼續。
如果你沒有在第二步從key中把passphrase刪除,那么每次你運行
/etc/rc.d/rc.httpd start
啟動服務器的時候你都要輸入密碼。這也就意味著如果你的服務器因為某些原因重新啟動了,除非你在服務器旁手動敲入了密碼,否則你的web服務器就不會啟動。
關鍵字:Apache SSL Howto 譯文
新文章:
- CentOS7下圖形配置網絡的方法
- CentOS 7如何添加刪除用戶
- 如何解決centos7雙系統后丟失windows啟動項
- CentOS單網卡如何批量添加不同IP段
- CentOS下iconv命令的介紹
- Centos7 SSH密鑰登陸及密碼密鑰雙重驗證詳解
- CentOS 7.1添加刪除用戶的方法
- CentOS查找/掃描局域網打印機IP講解
- CentOS7使用hostapd實現無AP模式的詳解
- su命令不能切換root的解決方法
- 解決VMware下CentOS7網絡重啟出錯
- 解決Centos7雙系統后丟失windows啟動項
- CentOS下如何避免文件覆蓋
- CentOS7和CentOS6系統有什么不同呢
- Centos 6.6默認iptable規則詳解