八個免費開源 Nginx 管理系統,輕松管理 Nginx 站點配置
Nginx 是一個高效的 HTTP 服務器和反向代理,它擅長處理靜態資源、負載均衡和網關代理等任務。Nginx 的設置主要通過一個主配置文件 “nginx.conf” 來完成,其中可以定義服務器配置塊(server blocks)和位置匹配規則(location blocks)等。
盡管 Nginx 的配置語法相當簡潔,但在處理復雜的路由規則、反向代理設置或 SSL 配置時,配置文件可能會變得復雜。特別是當涉及到多層嵌套和特定條件判斷時,稍有不慎就可能導致配置錯誤或沖突。
Nginx配置錯誤可能會對服務器造成嚴重風險。常見問題包括允許未經授權訪問、數據泄露和拒絕服務攻擊的安全漏洞。配置錯誤還可能導致網站宕機或性能低下,影響用戶體驗和信任。此外,不正確的設置可能會暴露敏感信息或使攻擊者更容易利用漏洞。因此,正確配置Nginx以確保應用程序的安全性和可靠性至關重要。使用帶有GUI的應用程序來管理Nginx服務,可以簡化配置并避免錯誤。
下面介紹幾個比較好的開源Nginx可視化配置系統,通過這些可視化系統可以更輕松、更安全地管理Nginx實例。
1.Nginx UI
https://github.com/0xJacky/nginx-ui
Nginx UI是一個免費開源基于Web的Nginx配置應用程序,它提供了數十種功能,使得DevOps專業人員和網站管理員能夠輕松管理多個Nginx實例。由于它是使用Go語言開發的,因此執行效率非常快。
功能特點:
- 在線查看服務器 CPU、內存、系統負載、磁盤使用率等指標
- 在線 ChatGPT 助理
- 一鍵申請和自動續簽 Let's encrypt 證書
- 在線編輯 Nginx 配置文件,編輯器支持 Nginx 配置語法高亮
- 在線查看 Nginx 日志
- 使用 Go 和 Vue 開發,發行版本為單個可執行的二進制文件
- 保存配置后自動測試配置文件并重載 Nginx
- 基于網頁瀏覽器的高級命令行終端
- 支持深色模式
- 自適應網頁設計
Linux下的安裝方法:
bash <(curl -L -s https://mirror.ghproxy.com/https://raw.githubusercontent.com/0xJacky/nginx-ui/master/install.sh) install -r https://mirror.ghproxy.com/
2.VeryNginx
https://github.com/alexazhou/VeryNginx
VeryNgnix是一個基于lua-nginx-module(openresty)的非常強大的nginx控制面板。
VeryNginx實現了高級防火墻(waf)、訪問統計等功能。它增強了Nginx的功能,并提供了友好的Web界面。可以使用Python安裝:
python install.py install
3.OpenPanel
https://github.com/stefanpejcic/OpenPanel
OpenPanel是一個靈活而強大的Web控制面板,提供社區支持版本和具有其他功能和支持的高級版本。它為每個用戶提供一個隔離的環境,類似于VPS的體驗,提供對服務器配置、PHP版本、域日志等的完全控制。
功能特點包括:
- 用戶可以運行Nginx或Apache Web服務器。
- 用戶可以運行MySQL或MariaDB數據庫。
- 使用WP管理器管理WordPress網站。
- 無需密碼登錄phpMyAdmin和Web終端。
- 安裝和更新系統服務。
- 內置REDIS和Memcached對象緩存。
- 輕松導出DNS區域。
- 控制MySQL設置、設置限制并啟用遠程訪問。
- 在不需要的時候關閉cronjobs。
- 安裝PHP版本、編輯php.ini文件并設置限制。
- Google PageSpeed數據會自動顯示網站。
- 僅在需要時自動啟動服務以節省資源。
- 將頁面保存到收藏夾。
- 與第三方共享Web終端會話。
- 將注釋添加到DNS記錄。
- 從文件管理器中的URL下載文件。
- 隔離的用戶和管理面板。
- 接收每日使用報告。
- 管理員可以為用戶添加自定義消息。
- 所有操作的詳細活動日志。
4.Ajenti
https://github.com/ajenti/ajenti
Ajenti是一個用于簡化Nginx服務器管理的開源項目,是一個Linux BSD模塊化服務器管理面板。Ajenti 2提供了一個新的界面和更好的架構,系統使用Python3和AngularJS開發。
它提供了友好的Web用戶界面,允許用戶輕松配置和監視服務器設置、管理域和監督應用程序。使用Ajenti,管理員可以管理SSL證書、監控服務器性能和訪問日志等任務,所有這些都可以在集中式儀表板上執行,從而使服務器管理更加高效和更具可訪問性。
功能特點包括:
- 輕松安裝:Ajenti 2可以通過pip和提供的腳本輕松安裝。
- 現有配置:選擇您的當前配置并按原樣在現有系統上工作,無需任何準備。
- 關懷:不會覆蓋您的配置文件、選項和注釋,所有的變化都是非破壞性的。
- 包括電池:包括大量的系統和軟件配置,監控和管理插件。
- 可擴展性:Ajenti 2可以使用Python輕松擴展。可以使用Ajenti API快速開發插件。
- 現代:界面賞心悅目,可以從平板電腦和移動端管理。
- 輕量級:內存占用和CPU使用量小,支持低端機、墻插、路由器等。
下面是Ajenti的一些功能截圖:
(1)儀表盤
(2)設置
(3)插件
(4)系統命令
5.Schenkd nginx-ui
https://github.com/schenkd/nginx-ui
這個Nginx UI和0xJacky的Nginx UI 不是同一個,這個Nginx UI也是一個可以用于修改nginx配置文件的可視化界面管理工具。
6.EasyEngine
https://github.com/EasyEngine/easyengine
EasyEngine CLI是一個命令行界面工具,這個工具可以簡化Nginx的管理。使用EasyEngine,用戶可以輕松地設置一個完整的Web服務技術棧,包括WordPress、Nginx、PHP、MySQL、Redis等。
它支持HTTPS和SSL證書,并可通過Let's Encrypt自動續訂。EasyEngine專為WordPress設計,提供對象和全頁緩存以提高性能。
用戶可以使用ee cli update命令輕松升級,以獲得新的功能和補丁。此外,EasyEngine可以基于Docker安裝,也支持所有WordPress網站的原生cron。
7.CapRover
https://github.com/caprover/caprover
CapRover是一個免費開源PaaS平臺,可以基于Docker安裝,用于簡化Nginx和Let's Encrypt應用程序的部署和管理。
它允許開發人員部署各種應用程序(Node.js,PHP,Python等)。通過超級用戶的Web界面或CLI進行快速管理。CapRover支持一鍵應用部署、自動SSL管理和集群負載平衡等功能,非常適合希望簡化工作流程的開發人員。
功能特征包括:
- 輕松的應用程序/數據庫部署:支持NodeJS,Python,PHP,ASP.NET,Ruby等。
- 超快:使用Docker,Nginx,Let's Encrypt和NetData。
- 完全可定制的Nginx配置。
- CLI for Automation:簡化腳本和自動化任務。
- Web GUI:用戶友好的界面,方便。
- 無鎖定:刪除CapRover而不影響應用程序功能。
- Docker Swarm:支持容器化和集群。
- 可定制的Nginx:完全可配置的負載平衡。
- 用于管理Docker操作的簡單界面。
- 免費SSL:使用Let's Encrypt的自動HTTPS。
8.NGINX代理、Grafana
https://github.com/nginx/agent
NGINX Agent是個Nginx或NGINX Plus實例配套的守護程序,可與Grafana儀表板配合使用。
主要功能特點包括:
- NGINX配置的遠程管理
- 收集NGINX性能和操作系統指標的實時報告
- NGINX事件處理
NGINX Agent在運行NGINX的系統上作為伴隨進程運行。它提供了gRPC和REST接口,用于配置管理和從NGINX進程和操作系統收集指標。NGINX Agent支持使用常見的Linux工具與NGINX進行遠程交互,并釋放了構建復雜的監控系統的能力,這些系統可以管理大量的NGINX實例。