风雨同行 发表于 2024-9-6 19:56:10

Apache Guacamole 安装及设置VNC长途桌面控制

官网



[*]https://guacamole.apache.org/
简介

Apache Guacamole 是一个开源的长途桌面网关,可以通过欣赏器访问各种长途桌面协议。它由 Apache 软件基金会维护,主要功能是提供一个无需客户端插件的 Web 访问解决方案。
支持多种协议



[*]VNC(Virtual Network Computing): 用于长途控制计算机的协议。
[*]RDP(Remote Desktop Protocol): 微软的长途桌面协议。
[*]SSH(Secure Shell): 用于安全地长途登录和管理计算机的协议。
无插件欣赏器访问

用户可以通过现代 Web 欣赏器(如 Chrome、Firefox、Edge)访问长途计算机,无需安装额外的客户端插件或软件。
设置和管理

通过 Web 界面举行用户管理、设置长途毗连和设置访问权限。
可以通过设置文件和数据库举行更细粒度的控制。
应用场景



[*]长途工作: 允许员工在差别的地点访问公司内部的计算机和系统。
[*]技术支持: 支持 IT 人员长途管理和排除故障。
[*]教育和培训: 提供长途访问实行环境或教学资源。
Podman 摆设 Apache Guacamole



[*]镜像:https://hub.docker.com/r/guacamole/guacamole
   留意: Podman 是 Docker 替代工具;操作命令兼容,示例中的 podman 命令可以直接更换为 docker;Podman 的安装与利用请阅读 《安装 podman 与 podman-compose》 文章。


[*]启动 podman 虚拟机(Mac环境需要启动虚拟才气正常利用 Podman)
podman machine start podman-vm
拉取 docker 镜像

podman pull guacamole/guacamole
podman pull guacamole/guacd
podman pull postgres:16
# 或
docker pull guacamole/guacamole
docker pull guacamole/guacd
docker pull postgres:16
docker-compose.yml

version: '3'
services:
guacamole:
    image: guacamole/guacamole
    container_name: guacamole
    ports:
      - '8080:8080'
    environment:
      GUACD_HOSTNAME: guacd
      GUACD_PORT: 4822
      # 配置 MySQL 数据库
      # MYSQL_HOSTNAME: 192.168.0.217
      # MYSQL_PORT: 3306
      # MYSQL_DATABASE: 'guacamole_db'
      # MYSQL_USER: 'zyuser'
      # MYSQL_PASSWORD: 'Lkm##2021'
      # 配置 PostgreSQL 数据库
      POSTGRESQL_HOSTNAME: postgres
      POSTGRESQL_PORT: 5432
      POSTGRES_DATABASE: 'guacamole_db'
      POSTGRES_USER: 'root'
      POSTGRES_PASSWORD: '4NuMDwIzp05BdKp7Bdmf'
    depends_on:
      - guacd
guacd:
    image: guacamole/guacd
    container_name: guacd
    ports:
      - '4822:4822'
postgres:
    image: postgres:16
    container_name: postgres
    # 容器设置为特权模式
    privileged: true
    # restart: always
    ports:
      - '5432:5432'
    environment:
      # 创建具有超级用户权限的指定用户和同名的数据库
      POSTGRES_USER: 'root'
      POSTGRES_PASSWORD: '4NuMDwIzp05BdKp7Bdmf'
      # 如果未指定,则将POSTGRES_USER使用的值。
      POSTGRES_DB: 'guacamole_db'
      # 默认为/var/lib/postgresql/data
      PGDATA: /var/lib/postgresql/data
    volumes:
      - /etc/localtime:/etc/localtime
      - ./postgres/data:/var/lib/postgresql/data
摆设 PostgreSQL

# 数据存在缩主机上
mkdir postgres/data
# 执行部署命令
podman-compose up -d postgres
天生 initdb.sql 脚本

   注: 根据自己的需求天生对应的数据库初始化 SQL 脚本。本章示例采取 PostgreSQL。


[*]天生 PostgreSQL 初始化 SQL 脚本
podman run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --postgresql > initdb.sql


[*]天生 MySQL 初始化 SQL 脚本
podman run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql


[*]毗连 PostgreSQL 数据库,选择 guacamole_db 库 实行 initdb.sql 脚本初始化数据库。
https://i-blog.csdnimg.cn/direct/1b80924a4d7f48cd8862e4961a1f54f0.png


[*]大概进入容器内实行 guacamole_db 数据库初始化。
# 将 initdb.sql 复制到容器内
podman cp initdb.sql postgres:/
# 进入 postgres 容器内
podman exec -it postgres /bin/bash
# 执行 initdb.sql
psql -U root -d guacamole_db -f initdb.sql
摆设 guacamole

podman-compose up -d guacamole
Guacamole 基本用法



[*]http://127.0.0.1:8080/guacamole/#/
   注: Guacamole 默认登录账号/暗码 guacadmin/guacadmin
https://i-blog.csdnimg.cn/direct/7f95201d0c734fa09f83565dc3f55f55.png
设置 VNC 毗连

   留意: VNC 只能毗连与 Guacamole 服务 在 同一个局域网 的电脑。外网访问需要为 Guacamole 设置域名举行访问。


[*]Nginx 设置
location /guacamole/ {
    proxy_set_header X-Real_IP $remote_addr;
    proxy_set_header Host $host;
    proxy_set_header X_Forward_For $proxy_add_x_forwarded_for;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection 'upgrade';
    proxy_pass http://127.0.0.1:8080/guacamole/;
}


[*]进入设置页面添加毗连
https://i-blog.csdnimg.cn/direct/f469dd1562f941dc91ead368e714cecf.png


[*]返回首页点击毗连
https://i-blog.csdnimg.cn/direct/0f6a8f30f8e94f429e5424712501cafc.png


[*]毗连的是本人 MacBook 电脑
https://i-blog.csdnimg.cn/direct/d838243dd9b54ba9bacf8882bd11ca06.png


[*]手机上效果
https://i-blog.csdnimg.cn/direct/6d10b661b92d49e9844c84832006d1b4.png
Mac 电脑开启自带的 VNC 服务

https://i-blog.csdnimg.cn/direct/e83e3b50b72447069b37e00051a8c588.png
https://i-blog.csdnimg.cn/direct/587c10120842437baf1781d467c4574f.png
https://i-blog.csdnimg.cn/direct/a067af4713a34a60acab19fa46fc4e74.png

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Apache Guacamole 安装及设置VNC长途桌面控制