此專案可讓您輕鬆設定酪梨醬跳轉主機,具有可選的TLS 反向代理程式(自簽名或Let's Encrypt)、Active Directory 整合、多重身份驗證、快速連接和歷史記錄儲存UI 增強功能、自訂UI深色主題模板、自動資料庫備份、電子郵件警報和內部強化選項,包括用於防禦暴力攻擊的fail2ban。還有類似亞馬遜酪梨醬堡壘集群的企業部署選項。
將以下連結貼到終端機並按照提示操作(不要以 root 身份運行,腳本將提示輸入 sudo ):
wget https://raw.githubusercontent.com/itiligent/Guacamole-Install/main/1-setup.sh && chmod +x 1-setup.sh && ./1-setup.sh
相容的作業系統:
Debian:12.x 或 11.x
Ubuntu LTS 變體:24.04、23.04、22.04
Raspbian Buster 或 Bullseye
每 25 個使用者 1 個 CPU 核心 + 2GB RAM(加上您所選作業系統的最低 RAM 和磁碟空間)。
開啟 TCP 連接埠:22、80 和 443(沒有其他服務使用 80、8080 和 443)
如果選擇任一 TLS 反向代理選項,則必須為內部代理站台建立一個 PRIVATE DNS 記錄,如果選擇 Let's Encrypt 選項,則必須建立額外的 PUBLIC DNS 記錄。
已安裝 Sudo 和 wget 軟體包
執行1-setup.sh
的使用者必須具有sudo權限
主要的1-setup.sh
腳本透過以下步驟指導安裝:
設定係統主機名稱和本機 DNS 名稱(本機 DNS 必須與 TLS 代理程式一致)。
選擇本機 MySQL 安裝或使用預先存在的本機或遠端 MySQL 實例。
選擇驗證擴充功能:DUO、TOTP、LDAP/Active Directory 或無。
選擇可選的控制台功能:快速連接和歷史記錄儲存 UI 整合。
選擇 Guacamole 前端:Nginx 反向代理(HTTP 或 HTTPS)或使用連接埠 8080 上的本機 Guacamole 介面。
新的伺服器和用戶端瀏覽器憑證儲存到$HOME/guac-setup/tls-certs/[date-time]/
。
(可選)請依照螢幕上的指示進行用戶端憑證匯入,以避免 https 瀏覽器警告。
如果您選擇使用自簽名 TLS 安裝 Nginx:
若要自訂許多可用的腳本選項:
在出現第一個提示時退出1-setup.sh
。
所有可設定的腳本選項都顯示在1-setup.sh
開頭的靜默安裝選項下。
靜默安裝選項的某些組合將允許完全無人值守的安裝,支援大規模部署或高度客製化的 Docker 建置。
進行變更後在本機重新執行編輯的腳本(不要重新執行自動安裝 Web 連結 - 請參閱下文。
其他自訂安裝注意事項:
注意:重新執行自動安裝程式會重新下載腳本套件,這將覆蓋您的所有腳本編輯。因此,您必須在編輯後本地運行 1-setup.sh。如果編輯任何其他子腳本,則也必須註解掉 1-setup.sh 腳本中對應的下載連結。
升級腳本會根據您的特定安裝設定自動自訂,以實現一致的未來更新。 (安裝後從自動安裝連結重新下載將覆蓋上述所有自訂設定。)
Nginx 反向代理預設配置為至少 TLS 1.2。對於古老的系統,請參閱安裝後/etc/nginx/nginx.conf
檔案的註解部分。
每日 MySQL 備份作業會在腳本擁有者的 crontab 下自動設定。
快速連線選項會帶來一些額外的安全隱患,請注意您環境中的潛在風險。
安裝後手動強化選項:
add-fail2ban.sh
:為 Guacamole 新增鎖定策略,以防止暴力密碼攻擊。
add-tls-guac-daemon.sh
:將 guac 伺服器和 guac 應用程式之間的內部流量封裝在 TLS 中。
add-auth-ldap.sh
:用於簡化 Active Directory 整合的範本腳本。
add-smtp-relay-o365.sh
:用於與 MSO65 整合電子郵件警報的範本腳本(BYO 應用程式密碼)。
請遵循此處的主題和品牌說明。要恢復到預設主題,只需從/etc/guacamole/extensions
中刪除 Branding.jar 文件,清除瀏覽器快取並重新啟動即可。
若要續訂自簽章憑證或變更反向代理本機 DNS 名稱/IP 位址:
重新執行4a-install-tls-self-signed-nginx.sh
以建立新的 Nginx 憑證(隨附的瀏覽器用戶端憑證也將更新)。更改憑證後務必清除瀏覽器快取。
看這裡。
看這裡
要升級酪梨醬,請在運行之前編輯upgrade-guacamole.sh
以反映最新版本的酪梨醬和MySQL連接器/J。該腳本將自動更新 TOTP、DUO、LDAP、快速連接和歷史記錄儲存擴充(如果存在)。
對於單獨的資料庫層:使用此處的install-mysql-backend-only.sh
安裝 Guacamole MySQL 資料庫的獨立實例。
對於單獨的應用程式層:執行1-setup.sh
並將新安裝指向單獨的資料庫執行個體。只需拒絕“本地安裝 MySQL”選項和任何其他本地反向代理安裝選項即可。
對於單獨的前端層:使用隨附的 Nginx 安裝程式腳本建立單獨的 Nginx 前端層,然後套用您首選的 TLS 負載平衡技術。或者,與開源 Nginx 相比,AWS/Azure/GCP 負載平衡器或 HA 代理可以提供卓越的會話持久性和關聯性。
自動執行連結將這些檔案下載到$HOME/guac-setup
:
1-setup.sh
:父安裝腳本。
2-install-guacamole.sh
:酪梨醬來源建置和安裝程式腳本。
3-install-nginx.sh
:Nginx安裝腳本。
4a-install-tls-self-signed-nginx.sh
:安裝/刷新自簽名 TLS 憑證腳本。
4b-install-tls-letsencrypt-nginx.sh
:Let's Encrypt for Nginx 安裝程式腳本。
add-auth-duo.sh
:Duo MFA 擴充安裝腳本。
add-auth-ldap.sh
:Active Directory 擴充功能安裝程式範本腳本。
add-auth-totp.sh
:TOTP MFA 擴充安裝程式腳本。
add-xtra-quickconnect.sh
:快速連接控制台擴充安裝程式腳本。
add-xtra-histrecstore.sh
:歷史記錄儲存擴充安裝程式腳本。
add-smtp-relay-o365.sh
:O365 SMTP 驗證中繼設定腳本(BYO 應用程式密碼)。
add-tls-guac-daemon.sh
:將 guacd 伺服器和 Guacamole Web 應用程式之間的內部流量封裝在 TLS 中。
add-fail2ban.sh
:Fail2ban(和酪梨醬保護策略)安裝程式腳本。
backup-guacamole.sh
:MySQL 備份設定腳本。
upgrade-guacamole.sh
:酪梨醬應用程式、擴充功能和 MySQL 連接器升級腳本。
branding.jar
:用於自訂 Guacamole 的 UI 主題的基本範本。