Linux伺服器管理面板,使用AMH 自動部署LNMP環境
AMH 是國內首個支援彈性多環境面板,軟體模組化架構設計,高擴充靈活性。自動部署LNMP環境,面板支援LNMP、LAMP、LNGX、LNAMP等不同WEB應用環境。 AMH提供免費版本支援10年從未間斷,最新版本再次增加提供商業授權可免費授權使用。以往收費授權軟體,包括異常監控、資料庫與文件同步、流量防護管理、負載平衡等全部免費可用。
AMH 是一款快速,簡潔,輕巧的Linux伺服器管理面板,適合新手入門使用。視覺化軟體安裝,簡單方便,大大節省了伺服器的維護時間。
以下使用AMH在RedHat 7上自動部署LNMP環境,微軟雲端 雲端Azure.com 提供免費Standard B1s (1 vcpu,1 GiB 記憶體)雲端伺服器,Linux版本最高只支援RedHat 7.7
對於新手入門來說,足夠使用了,可以使用wordpress搭建免費的Blog部落格。也可以安裝mysql5.6和php7.4,雖然每個月只有100G的出站流量,部落格中的圖片可以使用亞馬遜雲的CDN分發至世界各地。
AMH官網:https://amh.sh/
使用AMH 自動部署LNMP環境
本次測試AMH自動部署LNMP環境選用的是Azure的B1s伺服器。
配置Linux基礎環境
首先將Azure的B1s伺服器設定好Linux基礎環境。
SSH遠端連線請參考:Azure Linux 微軟雲端主機使用Root超級使用者登入
安裝YUM增強工具,因為是RedHat 7,當時還沒有推出DNF指令,只能使用YUM指令進行軟體安裝。
DNF 指令(Dandified yum) 是基於RedHat 的系統的傳統YUM 套件管理器的下一代版本。它是Fedora 22、CentOS8 和RHEL8 的預設套件管理器。
yum install yum-utils yum update
安裝dnf指令
yum install dnf
安裝epel和remi軟體來源,dnf repolist all 指令可以查看全部的資料來源
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm dnf install https://rpms.remirepo.net/enterprise/remi-release-7.rpm dnf makecachea
安裝DNF指令自動更新
dnf install dnf-automatic systemctl start dnf-automatic.timer
安裝開發工具軟體包組
dnf group install 'Development Tools' -y
配置SWAP虛擬記憶體
Linux中的swap分割區類似Windows的虛擬內存,當實體記憶體不足的情況下,可透過建立swap分區來解決記憶體過小的問題。
使用 free -m
查看伺服器虛擬內存,微軟的B1s預設啟用了2G的虛擬內存,如果覺得2G的SWAP交換分區太小的話,刪除掉Swap交換分區,重新創建一個4G的或者更大的虛擬內存SWAP交換分區。
使用 swapon -s
命令查看交換分區的位置。
#停止Swap交換分區swapoff /mnt/resource/swapfile #刪除交換分區rm -rf /mnt/resource/swapfile #刪除開機啟動/etc/fstab設定內容sed -i "/'\/mnt/resource/swapfile swap swapfile swap defaults 0 0'//" /etc/fstab
創建Swap交換分區
#建立8G大小的Swap交換分區虛擬記憶體sudo dd if=/dev/zero of=/swapfile bs=1024 count=8388608 #查看Swap交換分區大小ls -lh /swapfile #更改 chap檔案的權限sudosudo #格式化Swap檔案sudo mkswap /swapfile #啟用Swap檔案sudo swapon /swapfile #設定開機啟動echo '/swapfile swap swap sw 0 0' | sudo tee -a /etc/fstab
修改伺服器時區,這個很關鍵,有時候客戶端和服務端的時間不一樣,有些軟體就會無法運作。
sudo timedatectl set-timezone Asia/Shanghai
永久關閉防火牆,如果需要防火牆功能,可以在Azure的B1s伺服器的雲端平台上的網路選項中設定防火牆,雲端平台上的防火牆設定更靈活一些。
#查看防火牆狀態systemctl status firewalld #關閉防火牆systemctl stop firewalld #永久關閉防火牆systemctl disable firewalld
基本設定完畢後,reboot重新啟動伺服器,開始安裝LNMP環境。
自動部署LNMP環境
進入AMH面板安裝頁面:https://amh.sh/install.htm
點選客製安裝,選擇需要安裝的版本,這裡選擇web伺服器軟體使用nginx1.20,資料庫軟體使用musql5.6,php選擇php8.0版本。
使用root 帳號登入Linux 伺服器,執行下列指令安裝AMH:
wget http://dl.amh.sh/amh.sh && bash amh.sh nginx-1.20,mysql-5.6,php-8.0
安裝小提示
安裝amh如果提示 wget: command not found
請先執行以下指令安裝wget指令後再安裝AMH:
#centos系統yum install -y wget #Ubuntu系統apt-get install -y wget
安裝amh過程中如果伺服器解析不了amh.sh網域的情況,
請先更換伺服器的DNS再安裝AMH。執行以下指令完成更換DNS解析:
echo -e "options timeout:1 attempts:1 rotate\nnameserver 8.8.8.8\nnameserver 114.114.114.114" >/etc/resolv.conf;
安裝amh成功後無法存取面板情況,請您檢查主機商是否有安全群組/防火牆相關限制,請開放端口,如開放式面板8888,9999端口。
AMH7.0 編譯安裝支援的系統
支援目前 CentOS、Ubuntu、Ubuntu、Debian 已發行的所有穩定版本,全面支援使用x86/x86_64、aarch64/arm64 架構的系統:
- CentOS Stream 9 x64 New
- CentOS Stream 8 x64
- CentOS 7 x64
- Debian 11 x64 (bullseye)
- Debian 10 x64 (buster)
- Debian 9 x64 (Stretch)
- Debian 8 x64 (Jessie)
- Debian 8 i386 (Jessie)
- Debian 7 x64 (wheezy)
- Debian 7 i386 (wheezy)
- Ubuntu 22 x64 New
- Ubuntu 20 x64
- Ubuntu 18 x64
- Ubuntu 16 x64
- Ubuntu 16 i386
- Ubuntu 14 x64
- Ubuntu 14 i386
中文安裝介面,輸入Y,然後回車進行AMH安裝。
編譯安裝速度有些慢,耐心等待一會兒。
耗時37分鐘LNMP環境的AMH面板安裝成功。
輸入訪問位址登入主機面板:https://20.231.211.35:9999
AMH使用者名稱:admin
AMH密碼:70dddd708f17
主面板上有五項內容,伺服器CPU資訊、伺服器磁碟資訊、伺服器網路卡流量圖表、伺服器記憶體資訊、伺服器系統資訊。在伺服器系統資訊中先同步伺服器的系統時間。
接下來你可以在AMH面板上管理伺服器上的網站和資料庫,不需要使用SSH連線伺服器了,在主機面板上可以操控伺服器上的一切設定。
點擊右上角的設置,在設定中可以修改存取端口,以及註冊授權帳戶,現在AMH的授權帳戶是免費申請的,只需要在官網註冊即可。
授權帳號的註冊也很簡單,輸入帳號密碼後,驗證手機就可以了!之後你就可以在軟體商店中安裝伺服器應用軟體,一些需要購買授權的軟體都是些專業級的軟體,新手用戶基本上用不上,當你需要的時候再充值購買也來得及。
在軟體商店中,有些可以安裝的軟體,按需安裝即可。
如果想要成功建立一個部落格站點,你需要在軟體商店中安裝以下軟體。
CDN反向代理
更新升級至lngx-2.6版本。增加WebSocket(ws)反代選項,修復關閉或啟動快取https配置沒更新問題,增加ipv6監聽選項,修復網站存在並發限制、寬頻限速或流量防護CDN模式時更換環境nginx出錯問題,修復虛擬主機清單點擊規則檔案跳轉切換了環境管理問題。 AMH-LNGX反向代理的環境模組。 LNGX即為Linux+Nginx+X,其中X為未限定。 lngx網站環境提供支援快取管理與設定反代站點,支援線上關鍵字新增、替換,支援設定不同類型檔案替換、與支援新增自訂首尾html程式碼區塊等。您可以創建lngx環境做為其它環境應用前端,例如在不同位置建立lngx環境並開啟緩存做為站點的CDN加速鏡像等。
偽靜態規則
更新升級至amrewrite-2.0版本,增加防盜鏈規則設定選項,簡化命令列運行,修復子網域主機規則清單沒顯示關聯問題,優化網域跳轉、URL重寫選項,調整與新增4個預設的新規則。 AMRewrite是AMH面板環境主機URL重寫模組,模組提供新增、編輯、刪除規則、維護規則檔案並校驗規則正確性。
SSL憑證管理
更新升級至amssl-3.6(v17)版本,更新修復應用程式憑證預設網站沒開啟問題,修復有ipv6監聽時,ipv4沒能開啟http2問題。 AMSSL是AMH面板的HTTPS / SSL憑證支援模組,支援自訂設定憑證、支援Lets Encrypt憑證一建自動快速部署(檔案驗證或DNS驗證泛域名通配憑證)、自動續約功能,支援憑證最佳化、http /2、強制https(HSTS)等功能,支援的AMH環境有LNMP、LAMP、LNMH、LNGX。 HTTPS是以SSL為基礎的建立安全加密的HTTP通道,也就是HTTP的安全版。 AMSSL模組支援線上自訂產生KEY私鑰、CSR簽章、CRT證書文件,與支援資料輸入方式管理證書,為環境的虛擬主機開通HTTPS / SSL存取支援。
Memcached快取軟體
更新至1.6.18版本相容於最新的gcc12.2安裝。 Memcached 是一個高效能的分散式記憶體物件快取系統,用於動態Web應用以減輕資料庫負載。它透過在記憶體中快取資料和物件來減少讀取資料庫的次數,從而提高動態、資料庫驅動網站的速度。
Memcached PHP客戶端加強版
更新升級至pecl_memcached-3.1(v5)版本,支援最新PHP8.0。 pecl_memcache與pecl_memcached都為Memcached軟體的php擴展,兩者功能有些差別後者為前者的增強版。 Memcached(客戶端/php擴充)是一個可以應付任意多個連接,使用非阻塞的網路IO的快取項目。由於它的運作機制是在記憶體中開啟一塊空間,然後建立一個HashTable,Memcached便會自管理這些HashTable。
Redis快取軟體
更新至最新Redis-6.2.6(v3)版本,優化停止程序,處理有使用密碼時停止redis失敗問題。 Redis是高效能開源的key-value資料庫,Redis使用ANSI C語言編寫、支援網路、可基於記憶體亦可持久化的日誌型、Key-Value資料庫,並提供多種語言的API。 Redis和Memcached類似,它支援儲存的value類型相對更多,包括string(字串)、list(鍊錶)、set(集合)、zset(有序集合)和hash(哈希類型)。
Redis PHP客戶端
升級至pecl_redis-5.3版本,相容支援最新的php8.0,可選擇安裝pecl_redis2.2、4.3或5.3版本。 pecl_redis是AMH面板Redis軟體的php環境擴充模組。 Redis是高效能開源的key-value資料庫,pecl_redis為Redis的PHP環境介面擴充模組,PHP環境使用Redis需要安裝此擴充。
如需郵件服務,還需安裝dovecot+postfix+amsmtp搭建SMTP郵局!