Ubuntu上Apache2+OpenSSL 配置HTTPS


 博主之前在給公司的虛擬雲主機開啟SSL。經參考兩個博客,總結出以下流程,親測。

<http://blog.csdn.net/newjueqi/article/details/9789659> @2017-04-17

<http://www.cnblogs.com/IT--Loding/p/6071855.html> @2017-04-17

 

一、安裝Apache

$ sudo apt-get install apache2

使用此方式安裝的APACHE,配置比較分散,一般如下:

默認站點在 /var/www/

配置文件在 /etc/apache2/

日志在 /var/log/apache/                            

啟動腳本是 /usr/bin/apache2ctl 或者 /etc/init.d/apache2

 

二、安裝OpenSSL

Ubuntu默認已經安裝了OpenSSL,如果沒安裝:

$ sudo apt-get install openssl

 

三、創建證書

1、自簽名證書

...... 在此省略 ......

 

2、第三方CA機構簽署證書

生成此證書,需要向第三方提交一個“生成證書請求文件(CSR)”,生成這個CSR需要兩步:

1) 生成私鑰KEY

2) 生成請求CSR

 

A、運行如下命令生成私鑰:

$  openssl genrsa -des3 1024 -out server.key

 

B、生成請求文件

運行如下命令生成證書請求文件(CSR)

$ openssl req -new -key server.key –out server.csr

把這個CSR文件傳給CA機構,然后他們會使用此請求文件生成證書。

(假設叫ca.crt,如果是cert結尾,手動導出64位的crt文件)

 

四、編輯HTTPS(SSL)配置

0. 轉移證書

$ mkdir /etc/apache2/ssl

$ cp ~/.../server.key /etc/apache2/ssl/.

$ cp ~/.../ca.crt /etc/apache2/ssl/.

 

1、開啟SSL模塊

$ a2enmod ssl

 

2、啟用SSL站點

$ a2ensite default-ssl

 

3、加入監聽端口

$ sudo vim /etc/apache2/ports.conf

編輯Apache端口配置,加入443端口 (HTTPS采用的443端口傳輸數據)

  Listen 443

 

4、配置虛擬主機

編輯default-ssl文件,加入證書對應的主機頭。

$ sudo vim /etc/apache2/sites-enabled/default-ssl.conf

     ServerName extend.me

 

5、配置SSL證書

- 按如下配置:

  SSLEngine on

  SSLCertificateFile        /etc/apache2/ssl/ca.crt

  SSLCertificateKeyFile   /etc/apache2/ssl/server.key

- 重新啟動Apache

$ sudo service apache2 restart

- 然后在瀏覽器打開 https://extend.me 測試下,會顯示Apache的歡迎頁。

- 可以修改配置文件 /etc/apache2/sites-enabled/default-ssl.conf 內的默認站點路徑。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM