在虛擬主機上設定 SSL/TLS 與啟動 HTTPS 的方法

可喜可賀,最近的獅子免費主機終於回歸了!在回歸之於,馬上註冊了一個帳號,看起來還不錯, cPanel 也是新版的。

接著也開放了可以安裝 SSL/TLS 的憑證了。以前大都是要買憑證並透過有公信的 CA 才有合法的憑證,現在有免費的方案可以選擇,有 WoSign (沃通) 與  Let’s Encrypt 可以選擇,前者是大陸(恩..),後者大家可能比較有聽過,官方網站在這裡,所以我們本篇文章就以獅子主機與使用 Let’s Encrypt 為例子,來教大家如何安裝這個免費的憑證。

第一步:先登入獅子主機

這一步我想大家都應該會,先跳過,登入之後先切換到 cPanel。畫面會長下圖這個樣子。

cpanel

如果沒有註冊的話,可以註冊一個,使用免費的方案與一個子網域來作使用。

第二步:到 sslforfree.com

這個網站可以幫助你申請 Let’s Encrypt ,因為 Let’s Encrypt 對於虛擬共享主機 (shared hosting) 是不友善的,還好國外有人做出網站可以幫助我們順利取得 Let’s Encrypt 的憑證。

進到網頁的畫面之後,一開始就有一個地方可以輸入你的網址,就把網址輸入進去並按下:Create Free SSL Certificate 按鈕。

sslforfree

 

接著等待一段時間之後,就會跑出下面的畫面了,有兩種方式可以驗證你的網域,第一種是網站幫你登入 FTP 自動幫你驗證。

第二種是手動驗證下載所需的檔案並上傳至利用FTP上傳至你的虛擬主機上。

這邊是強烈建議使用自動認證,原因是不用把檔案下在回來手動上傳檔案上去。因此我們選擇 Automatic FTP Verification 的按鈕

sslforfree

 

這裡會要求你填寫使用者名稱與密碼,至於目錄那一欄可以不必填寫沒有關係,因為他自己會自動偵測到預設家目錄上。

填寫完以後,就可以按下 Download Free SSL Certificate 的按鈕了。等一段時間之後,就會出現如下的畫面,分成兩部分來說明:

第一部分是,這裡可以申請一個帳號來作為管裡每個網域的憑證,憑證有效期限為每三個月,因此需要每三個月做一次更新,憑證才會有效。

sslforfree

 

若有帳號的話,憑證的時間快過期的時候,網站也會發信到你的帳號信箱做提醒。

第二部分是,有三個欄位,分別是 憑證,私鑰與 CA 檔。下面的按鈕是可以下載一個壓縮檔,裡面會有這三個檔案。

這邊我們不需要用到,我們可以分別去複製這三個檔案,將這三個檔案放到 cPanel 中的 SSL/TLS server。

sslforfree

我們轉到 cPanel 控制畫面,點選安全性分類下的 SSL/TLS。

cpanel

進去之後,按下:管理 SSL 網站,下面有三個地方可以貼,分別是: 憑證,私鑰與 CA 檔。下面可以選擇網域,選擇好之後我們把剛剛所產生的憑證,私鑰與 CA 檔 這三個檔案分別匯入進去。

接著按下安裝憑證,就可以了。

cpanel

 

我們看一下有沒有裝好,開 web browser 並輸入網址,看到下圖這樣,就成功囉!

httpsurl

[後記]

sslforfree.com 登入帳號之後可以看到所有申請的網域,這邊就可以進行 renew (續約憑證) 等相關的動作了。

sslforfree

 

[參考文章]

[免費]SSLforFree 免費ssl憑證:https://changken.biz/969

更換預設 phpMyAdmin 登入網址

我們在 Linux/Ubuntu 下,安裝使用 LAMP (Apache, MySQL/MariaDB, PHP) 或是 LEMP (Nginx, MySQL/MariaDB, PHP) 這樣搭配的 web server 在管理 MySQL 資料庫的時候會不熟,則需要安裝  phpMyAdmin 作為管理 MySQL 管理 web 介面,通常在 Ubuntu 下用下面的指令安裝即可:


sudo apt-get install phpmyadmin

安裝完成之後,輸入網址:http://example.com/phpmyadmin 就可以使用了。

平常一般人都知道只要進入這個網址就是可以進入 phpMyAdmin,尤其是再有允許外連的時候,容易造成安全上的問題,因此,為了避免這樣的情形發生,通常會限制 IP 允許登入 phpMyAdmin,不過,限制 IP 有一個缺點,萬一在 IP 以外的地方要連線登入就有問題了,因此,我們需要使用這篇所要的教學,把預設的路徑改掉。

這裡只先教 Apache 的做法,如果需要 Nginx 的話,可以參考下面參考文章的做法。

第一步:修改設定檔


sudo vi /etc/phpmyadmin/apache.conf

第二步:開啟設定檔之後,把它改成下列的樣子:


# Alias /phpmyadmin /usr/share/phpmyadmin

# /my 可以改成自己想要的形式
Alias /my /usr/share/phpmyadmin

附上圖片參考

phpmyadmin

[注意]

若是看參考文章中,後面還有一個步驟要利用下面的指令,加入一行到 apache2.conf 的設定檔,接著再重新啟動 Apache server 。


echo "Include /etc/phpmyadmin/apache.conf" >> /etc/apache2/apache2.conf

我加了之後,重新啟動 Apache 時會出現錯誤:


The Alias directive will probably never match because it overlaps an earlier Alias

所以我上面這一步驟沒有做,不過還是可以 work ,記得要重新啟動 Apache service 即可。

驗證一下,就可以知道有沒有成功了。原來的 /phpmyadmin 就會變成 404 Not found 了。下圖為最後文章中所驗證的方法。

Secure-PhpMyAdmin-Login-Page

[參考文章]

How to Change and Secure Default PhpMyAdmin Login URL