Sammanfattning: Moderna Guacamole är en tjänst i tre delar, inte bara en webbcontainer
Apache Guacamole ger dig webbläsarbaserad åtkomst via RDP, VNC och SSH utan en skrivbordsklient. En Docker-distribution av produktionskaraktär innehåller normalt Guacamole-webbappen, guacd och en databas som PostgreSQL eller MySQL/MariaDB. Det äldre BigBearCasaOS-paketet från 2023 bör betraktas som en historisk bekvämlighetslösning, inte som arkitekturreferens.
Använd de officiella Guacamole-containrarna
Apache-projektet publicerar de stödda avbildningarna guacamole/guacamole och guacamole/guacd. Guacamole Docker-stacken beskriver den officiella strukturen. De bredare installationslägena för Guacamole förklarar varför databaserad autentisering föredras för riktiga distributioner.
Rekommenderad containerstruktur
guacamole-web
|
+-- guacd
|
+-- postgres eller mariadb
Håll alla tre tjänsterna på ett privat Docker-nätverk. Publicera endast Guacamoles webbslutpunkt. Publicera inte databasen eller guacd på det lokala nätverket om inte någon annan komponent verkligen behöver åtkomst.
Initiera databasen före den första inloggningen
Guacamoles tillägg för databaserad autentisering behöver ha sitt schema inläst innan webbappen kan lagra användare och anslutningar. Använd SQL-initieringsfilerna som motsvarar den exakta Guacamole-versionen och databastypen. Se till att databaskatalogen är beständig.
Placera HTTPS framför tjänsten innan den exponeras externt
Guacamole kan överföra administratörslösenord och fjärrskrivbordssessioner, så att exponera tjänsten via vanlig HTTP är en dålig säkerhetsgräns. Använd en omvänd proxy med HTTPS och stark autentisering. HTTPS-proxyhanteringen i ZimaOS visar mönstret för omvänd proxy i ZimaOS.
Använd MFA eller SSO när Guacamole är internetåtkomligt
Apache Guacamole stöder tillägg för TOTP, OpenID Connect, SAML och andra autentiseringssystem. Fjärrskrivbordsåtkomst är en administrativ funktion. Skydda den därefter i stället för att enbart förlita dig på ett kort lokalt lösenord.
När du bör köra Guacamole i en virtuell maskin i stället
Om du vill isolera Guacamole från NAS-enhetens Docker-motor, eller om du redan har flera infrastrukturtjänster, ger en liten Debian-/Ubuntu-VM en tydlig gräns för uppdateringar och brandvägg. Maskinkraven för ZimaOS beskriver värdresurserna som behövs för den uppdelningen.
Appkraven för ZimaOS är användbara när Guacamole delar NAS-enhet med databaser, medieservrar och övervakning.
Lagra databasen och Guacamole-konfigurationen separat
Betrakta inte webbcontainern som den tillståndsbevarande delen av Guacamole. Användarkonton, sparade anslutningar och autentiseringsdata finns i databasen, medan tillägg och anpassad konfiguration kan finnas i monterade kataloger. Säkerhetskopiera dessa beständiga komponenter innan du ersätter avbildningar. Att hämta en ren container bör vara rutin; att behöva återskapa alla fjärranslutningar ur minnet bör det inte vara.
Konfigurera WebSockets korrekt i den omvända proxyn
Guacamole använder långlivade webbläsaranslutningar och WebSocket-stöd för interaktiva sessioner. Om inloggningen fungerar men fjärrskrivbord kopplas från, fryser eller får dålig prestanda bakom en proxy, bör du kontrollera WebSocket-vidarebefordran och tidsgränserna i proxyn innan du skyller på RDP eller VNC. Håll Guacamole-sökvägen eller värdnamnet stabilt så att återkopplings- och webbläsarsessionsbeteendet inte ändras vid varje uppdatering.
Separera åtkomst till Guacamole från målsystemens inloggningsuppgifter
En Guacamole-inloggning styr åtkomsten till gatewayen; Windows-/Linux-målet har fortfarande sina egna RDP-, VNC- eller SSH-uppgifter och policyer. Undvik att återanvända samma administratörslösenord överallt. För delad åtkomst i hemmet eller teamet bör du skapa namngivna Guacamole-användare och endast ge dem de anslutningar var och en behöver.
Testa gatewayen innan du exponerar den
Innan du lägger till publik DNS bör du testa en SSH- eller RDP-anslutning från det lokala nätverket, bekräfta urklipps- och sessionsbeteende, starta om varje Guacamole-container och kontrollera att sparade anslutningar fortfarande fungerar. Testa därefter en säkerhetskopiering och återställning av databasen. En gateway som överlever återskapande av containrar är mycket närmare en underhållbar distribution än en som bara fungerar fram till nästa uppdatering av avbildningen.
Vanliga frågor
Behöver Guacamole en skrivbordsklient?
Nej. Användarna ansluter via en webbläsare medan Guacamole översätter webbläsartrafiken till RDP-, VNC- eller SSH-sessioner.
Behöver Guacamole en databas?
För användar- och anslutningshantering av produktionskaraktär, ja. Den enkla XML-autentiseringsmetoden passar främst för grundläggande tester.
Bör jag exponera guacd mot internet?
Nej. Håll guacd privat bakom Guacamole-webbappen.
Kan Guacamole ersätta ett VPN?
Det kan ge webbläsaråtkomst till konfigurerade fjärrskrivbord, men det är inte en generell privat nätverkstunnel för alla tjänster.
Kan jag använda MariaDB i stället för PostgreSQL?
Ja. Bland de stödda alternativen för databaserad autentisering finns MySQL-kompatibla databaser och PostgreSQL när de konfigureras med motsvarande tillägg och schema.



