如何在 VPS 安裝免費的 cPanel 控制台?

Linux

前言

還記得小時候使用 php 虛擬主機時,幾乎每間主機商都使用 cPanel 控制台,所有的需求都可以在 cPanel 裡頭設定完成;自從改用 VPS 後,每次都要連進主機敲指令才能達到目的。雖說指令敲久也習慣了,但有時還是會想起使用 cPanel 的美好時光,難道 VPS 就不能裝 cPanel 嗎?

當然可以,但 cPanel 基本方案就可以再多租一台主機了,我個人不太推,因為會用 VPS 的人應該都有能力找到替代方案,下述連結是 cPanel 價目表:

Pricing
Find a plan that's right for you. Try cPanel & WHM month-to-month.

Hestia Control Panel (HestiaCP)

本篇文章其實是要介紹 cPanel 的替代方案:Hestia Control Panel;HestiaCP 是一套開放原始碼的控制台,凡舉:域名管理、DNS 設定、資料庫建立⋯⋯等都可以在後台設定,常用的 cPanel 功能都能在這裡找到。

系統展示與試用:

LOGIN - demo.hestiacp.com:8083 - Hestia Control Panel
後台首頁。
提供常見服務的一鍵安裝。
可以在使用者頁面將語言改成中文。

HestiaCP 還是 VestaCP?

搜尋 HestiaCP 會出現 VestaCP 的結果,因為 HestiaCP 是從 VestaCP 修改而來的,細看甚至可以發現安裝方法也一模一樣;兩套控制台的核心功能大同小異,那為何我選擇 HestiaCP?

選擇 HestiaCP 是因為它的發版頻率比較高,讓我覺得安心。截至今天為止,VestaCP 只發佈了 3 個版本;但 HestiaCP 已經發佈了 43 個版本,幾乎每個月都有新版本。這意味著 HestiaCP 更有機會推出新功能或是錯誤修正,VestaCP 看起來則像是個沒人照顧的孤兒。

安裝

GitHub - hestiacp/hestiacp: Hestia Control Panel | A lightweight and powerful control panel for the modern web.
Hestia Control Panel | A lightweight and powerful control panel for the modern web. - GitHub - hestiacp/hestiacp: Hestia...

系統需求

目前 HestiaCP 支援下列作業系統:

Debian

  • 10
  • 11

Ubuntu

  • 18.04 LTS
  • 20.04 LTS
  • 22.04 LTS

要留意 HestiaCP 不支援 32 位元的作業系統

安裝流程

首先要以 root 帳號登入系統。

下載安裝檔:

wget https://raw.githubusercontent.com/hestiacp/hestiacp/release/install/hst-install.sh

執行安裝檔:

bash hst-install.sh
安裝成功的畫面。

安裝完會需要重開機,此時按任意鍵就會自動重開了;待重開機結束,就可以用上圖的網址與帳密登入 HestiaCP。

客製化安裝

HestiaCP 預設包了很多服務,如果有客製化安裝需求可以使用它的安裝指令產生器:

https://gabizz.github.io/hestiacp-scriptline-generator/

像我本身就用不到 Apache、Vsftp 跟 Bind,產出的安裝指令就會如下:

sudo bash hst-install.sh --apache no --phpfpm yes --multiphp no --vsftpd no --proftpd no --named no --mysql yes --postgresql no --exim yes --dovecot yes --sieve no --clamav yes --spamassassin yes --iptables yes --fail2ban yes --quota no --api yes --interactive yes --with-debs no  --port '8083' --hostname 'HostiaCP網域' --email '信箱' --password '密碼' --lang 'en'   

其他設定

如果需要修改 php.ini 設定,你可以在 /etc/php/[版本號]/fpm 找到它。別忘了修改完畢要重啟 nginx 以及 php,下述指令以 php 8.0 為例:

sudo service nginx restart
sudo service php8.0-fpm reload

備份還原

我剛好有使用它的備份、還原功能來執行主機搬家,整體滿方便的。流程是先備份帳號,將備份檔傳到新的 HestiaCP 的主機即可還原。下述範例均以 jarvis 當作 HestiaCP 的帳號名稱,所有指令均以 root 登入主機執行。

備份帳號

v-backup-user jarvis

在舊主機下指令,此時會產出名稱格式為 jarvis.2020.01.01-00-00.tar 的備份檔案。

傳送備份檔案

scp /backup/jarvis.2020.01.01-00-00.tar root@新主機IP:/backup/

在舊主機下指令,將檔案傳到新主機。

還原帳號

v-restore-user jarvis jarvis.2020.01.01-00-00.tar

在新主機下指令,將收到的備份檔案還原。還原後重新整理網頁端的 HestiaCP 即可看到匯入的帳號以及底下的所有網站、資料。

結語

剛從虛擬主機空間轉換到 VPS 的使用者,可能還是比較習慣網頁式的後台管理系統,又或者還不熟悉 Linux 的指令。HestiaCP 提供一套完善的系統,讓 VPS 使用者不用敲太多指令,就可以使用網頁後台並同時享有 VPS 的優勢。

留言列表

Copied title and URL