Pages

2014年3月22日 星期六


Ubuntu 12.04 設定 Apache 使用 SSL 網站


1.安裝 OpenSSL
Ubuntu 在 10.04 後,好像就有預裝 OpenSSL 了,可以用下面的指令裝裝看,有裝過再裝一遍也不會有事的哩 !

sudo apt-get install openssl



2.啟用 Apache 2 的 SSL 模組
Apache 預設是沒有啟用 SSL 模組的,請用下面的指令來啟用。

sudo a2enmod ssl

3.建立放憑證的資料夾
請先用下面的指令來建立立要放憑證的資料夾,在下一個步驟會用到。

sudo mkdir /etc/apache2/ssl

4.建立自己認證
請用下面的指令來產生憑證,-days 後面的參數365是憑證的有效日期,可以依需要自行調整,-out 和 –keyout 是憑證和金鑰產出後要存放的路徑。

openssl req -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.pem -keyout /etc/apache2/ssl/apache.key

執行上面的指令之後,會出現下面的問題,這些是會寫到憑證裡的資訊,但是,不一定要全都填的。

5.修改虛擬主機的設定
阿舍是把OwnCloud 2 裝在虛擬主機裡,所以,要調整擬主機的設定檔,把第一行由原來的「*:80」改成「_default_:443」,然後再加入下面的三行,如果產生憑證時,有變更過產出的檔名或路徑時,就要修改第二行和第三的路徑和檔名。

<VirtualHost _default_:443>
       SSLEngine On
       SSLCertificateFile /etc/apache2/ssl/apache.pem
       SSLCertificateKeyFile /etc/apache2/ssl/apache.key
...

6.重啟 Apache 2
啟用好 Apache 的 SSL 模組並設定好虛擬主機之後,就要把 Apache 重啟來讓新設定生效,請下面的指令來重新啟動 Apache。

sudo /etc/init.d/apache restart 
sudo service apache2 restart (Ubuntu 11.10)

7. 防火牆
如果有啟用防火牆的話,要打開 443 埠號,不然,網站會打不開的,阿舍有啟用 ufw,所以,就用下面的指令來啟用 443 port。

sudo ufw allow 443 

8.開啟網站
最後,就可以用「https://」來開啟網站,如果 SSL 有設定成功,應該就會出現警告訊息,這是因為憑證沒有經過第三方公司認證過,所以,瀏覽器會警告說這個憑證可能是假的,不要管它,繼續操作下去就好了,如果是用 Firefox,就要點選「新增例外網站」,如果是用 Chrome,那就要點選「仍要繼續」, IE 的話,就點選「繼續瀏覽此網站(不建議)」的連結進入網站,進入網站之後,應詃就是用 https,也就是 SSL 在連線了哩 !

進入網站後,如果去點選網址列的憑證資訊,應該就會出現之前在步驟 4 所輸入的資訊哩 !

沒有留言:

張貼留言