Apache Guacomole

Добрый день, а по apach guacamole сможет кто-то подсказать как с ним удалеено работать? если он установлен и прокинут наружу c vps? порты какие-то отдельные выставить, не могу в админку зайти..

Вот пример compose файла, публикуется только порт 8080 самого guacamole, далее, он должен иметь доступ к guacd, а тот в свою очередь уже подключается у удаленным серверам.

Веб интерфейс предоставляет контейнер guacamole

services:
....
  guacamole:
    container_name: guacamole_compose
    group_add:
      - "1000"
    depends_on:
    - guacd
    - postgres
    env_file:
      - ./secrets/guacamole.env
    environment:
      GUACD_HOSTNAME: guacd
      RECORDING_SEARCH_PATH: /record
    image: guacamole/guacamole:1.6.0
    volumes:
      - ./record:/record:rw
    ports:
    - 8080:8080
    restart: unless-stopped

На постоянной основе пользуюсь Guacamole, но у меня развернут на домашнем сервере а не на vps, чтобы было две точки входа, и через vps и через домашний IP.

Вы зайти не можете потому что страница не открывается или потому что авторизация не проходит?

1 лайк

вот у меня как раз такой вариант. немогли бы подсказать базовый порт 8854, захожу и получаю ошибку

. немного непонятно по веб консоли как создать подключение, например базовое по rdp использовать пользоватея пк или guac. насколько я понял возможно vnc,rdp, ssh.

реверс прокси у меня. pangolin на vps, а сам guacomole дома на сервере

Как написал бы сейчас GPT: отлично, ситуация предельно ясна

Сам сервис работает и открывается, данная ошибка возвращается веб-сервером, на основе которого построен контейнер guacamole

Но Вы пытаетесь открыть корень сайта, а внутренее приложение guacamole запущено по адресу /guacamole, т.е. открывать надо https:///guacamole.domain.com/guacamole

В Traefik я у себя сделал такой конфиг

http:
  routes:
   guacamole-route:
    rule: Host(`guacamole.domain.com`)
      entryPoints:
        - websecure
      service: guacamole-service
      middlewares:
        - local-net-middleware
        - guacamole-add-prefix-middleware

  middlewares:
    guacamole-add-prefix-middleware:
      addPrefix:
        prefix: "/guacamole"

   services:
     guacamole-service:
       loadBalancer:
          servers:
            - url: http://guacamole.lan:8080

спс за подсказку но даже с префиксом /guacamole тажа ошибка

а логи контейнера что говорят?

Вот у меня при старте так
guacamole_compose  | NOTE: Picked up JDK_JAVA_OPTIONS:  --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED --add-opens=java.base/java.lang.reflect=ALL-UNNAMED --add-opens=java.base/java.io=ALL-UNNAMED --add-opens=java.base/java.util=ALL-UNNAMED --add-opens=java.base/java.util.concurrent=ALL-UNNAMED --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.525 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/9.0.106
guacamole_compose  | 26-Dec-2025 12:56:52.627 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Jun 5 2025 19:02:30 UTC
guacamole_compose  | 26-Dec-2025 12:56:52.639 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.106.0
guacamole_compose  | 26-Dec-2025 12:56:52.641 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
guacamole_compose  | 26-Dec-2025 12:56:52.642 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            6.17.2-2-pve
guacamole_compose  | 26-Dec-2025 12:56:52.657 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          amd64
guacamole_compose  | 26-Dec-2025 12:56:52.658 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /opt/java/openjdk
guacamole_compose  | 26-Dec-2025 12:56:52.671 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           21.0.7+6-LTS
guacamole_compose  | 26-Dec-2025 12:56:52.672 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Eclipse Adoptium
guacamole_compose  | 26-Dec-2025 12:56:52.680 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /tmp/catalina-base.kh9tYDqvTz
guacamole_compose  | 26-Dec-2025 12:56:52.681 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/local/tomcat
guacamole_compose  | 26-Dec-2025 12:56:52.822 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.824 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.833 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.834 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.835 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.844 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.850 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
guacamole_compose  | 26-Dec-2025 12:56:52.852 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/tmp/catalina-base.kh9tYDqvTz/conf/logging.properties
guacamole_compose  | 26-Dec-2025 12:56:52.865 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
guacamole_compose  | 26-Dec-2025 12:56:52.871 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
guacamole_compose  | 26-Dec-2025 12:56:52.872 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
guacamole_compose  | 26-Dec-2025 12:56:52.880 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dsun.io.useCanonCaches=false
guacamole_compose  | 26-Dec-2025 12:56:52.881 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
guacamole_compose  | 26-Dec-2025 12:56:52.882 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
guacamole_compose  | 26-Dec-2025 12:56:52.893 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/tmp/catalina-base.kh9tYDqvTz
guacamole_compose  | 26-Dec-2025 12:56:52.894 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
guacamole_compose  | 26-Dec-2025 12:56:52.903 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/tmp/catalina-base.kh9tYDqvTz/temp
guacamole_compose  | 26-Dec-2025 12:56:52.955 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.3.1] using APR version [1.7.2].
guacamole_compose  | 26-Dec-2025 12:56:52.956 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true].
guacamole_compose  | 26-Dec-2025 12:56:52.957 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
guacamole_compose  | 26-Dec-2025 12:56:53.006 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 3.0.13 30 Jan 2024]
guacamole_compose  | 26-Dec-2025 12:56:57.763 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
guacamole_compose  | 26-Dec-2025 12:56:58.110 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [7078] milliseconds
guacamole_compose  | 26-Dec-2025 12:56:58.573 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
guacamole_compose  | 26-Dec-2025 12:56:58.580 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.106]
guacamole_compose  | 26-Dec-2025 12:56:58.861 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/tmp/catalina-base.kh9tYDqvTz/webapps/guacamole.war]
guacamole_compose  | 26-Dec-2025 12:57:22.050 INFO [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
guacamole_compose  | 12:57:22.713 [main] INFO org.apache.guacamole.environment.LocalEnvironment -- GUACAMOLE_HOME is "/tmp/guacamole-home.bplbMpsYTQ".
guacamole_compose  | 12:57:23.127 [main] INFO org.apache.guacamole.GuacamoleServletContextListener -- Read configuration parameters from "/tmp/guacamole-home.bplbMpsYTQ/guacamole.properties".
guacamole_compose  | 12:57:23.139 [main] INFO org.apache.guacamole.GuacamoleServletContextListener -- Additional configuration parameters may be read from environment variables.
guacamole_compose  | 12:57:23.161 [main] INFO org.apache.guacamole.GuacamoleServletContextListener -- Additional configuration parameters may be read from files pointed to by "*_FILE" environment variables.
guacamole_compose  | 12:57:23.178 [main] INFO org.apache.guacamole.rest.auth.HashTokenSessionMap -- Sessions will expire after 60 minutes of inactivity.
guacamole_compose  | 12:57:24.341 [main] INFO org.apache.guacamole.log.LogModule -- Logging will be at the "info" level.
guacamole_compose  | 12:57:26.822 [main] INFO  o.a.g.extension.ExtensionModule - Multiple extensions are installed and will be loaded in order of decreasing priority:
guacamole_compose  | 12:57:26.824 [main] INFO  o.a.g.extension.ExtensionModule -  - [openid] "OpenID Authentication Extension" (/tmp/guacamole-home.bplbMpsYTQ/extensions/guacamole-auth-sso-openid.jar)
guacamole_compose  | 12:57:26.824 [main] INFO  o.a.g.extension.ExtensionModule -  - [ban] "Brute-force Authentication Detection/Prevention" (/tmp/guacamole-home.bplbMpsYTQ/extensions/guacamole-auth-ban.jar)
guacamole_compose  | 12:57:26.825 [main] INFO  o.a.g.extension.ExtensionModule -  - [postgresql] "PostgreSQL Authentication" (/tmp/guacamole-home.bplbMpsYTQ/extensions/guacamole-auth-jdbc-postgresql.jar)
guacamole_compose  | 12:57:26.825 [main] INFO  o.a.g.extension.ExtensionModule -  - [recording-storage] "Session Recording Storage" (/tmp/guacamole-home.bplbMpsYTQ/extensions/guacamole-history-recording-storage.jar)
guacamole_compose  | 12:57:26.825 [main] INFO  o.a.g.extension.ExtensionModule - To change this order, set the "extension-priority" property or rename the extension files. The default priority of extensions is dictated by the sort order of their filenames.
guacamole_compose  | 12:57:27.147 [main] INFO  o.a.g.extension.ExtensionModule - Extension "OpenID Authentication Extension" (openid) loaded.
guacamole_compose  | 12:57:27.197 [main] INFO  o.a.g.a.b.BanningAuthenticationListener - Addresses will be automatically banned for 300 seconds after 5 failed authentication attempts. Up to 10485760 unique addresses will be tracked/banned at any given time.
guacamole_compose  | 12:57:27.221 [main] INFO  o.a.g.extension.ExtensionModule - Extension "Brute-force Authentication Detection/Prevention" (ban) loaded.
guacamole_compose  | 12:57:32.846 [main] INFO  o.a.g.extension.ExtensionModule - Extension "PostgreSQL Authentication" (postgresql) loaded.
guacamole_compose  | 12:57:32.858 [main] INFO  o.a.g.extension.ExtensionModule - Extension "Session Recording Storage" (recording-storage) loaded.
guacamole_compose  | 12:57:33.089 [main] INFO  o.a.g.t.w.WebSocketTunnelModule - Loading JSR-356 WebSocket support...
guacamole_compose  | 12:57:33.257 [main] INFO  o.a.g.event.EventLoggingListener - The Apache Guacamole web application has started.
guacamole_compose  | 12:57:34.230 [main] WARN  o.g.jersey.server.wadl.WadlFeature - JAXBContext implementation could not be found. WADL feature is disabled.
guacamole_compose  | 26-Dec-2025 12:57:35.277 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/tmp/catalina-base.kh9tYDqvTz/webapps/guacamole.war] has finished in [36,416] ms
guacamole_compose  | 26-Dec-2025 12:57:35.302 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
guacamole_compose  | 26-Dec-2025 12:57:35.316 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [37183] milliseconds

это в рантипи - локально он открывается всё хорошо. а через реверс прокси нет.

возможно - тк rantipi тоже перенаправляет порты с 8080 на 8054

ну тогда на этом мои полномочия все

может в апач надо менять префиксы?

Ну оно запустилось нормально, похоже, что проблема в путях в runtipi и reverse proxy
Можно попробовать вбить путь и посмотреть какой итоговый покажет томкат

как заполнить эту простыню если нужен один пк из сетки?

Если Guacd один и дефолтный, то его не заполнять, если он запущен отдельно в локалке с подключаемым компом, то надо прописывать и его

Для простого RDP на компе достаточно этих базовых настроек

2 лайка

а куда вписывать настройки подключаеого пк.

в смысле?
дальше же скрин приложил

1 лайк