一元网络论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 64|回复: 0

远程桌面网关 Apache Guacamole 部署教程:详细步骤

[复制链接]

1万

主题

1万

帖子

5万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
54609
发表于 2024-8-22 00:54:11 | 显示全部楼层 |阅读模式
##  搭建 Apache Guacamole Web 远程桌面网关
本文将使用 Docker Compose 部署 Apache Guacamole,实现安全便捷的远程桌面访问。
**环境准备:**
- 安装 Docker 和 Docker Compose
- 准备一个空目录用于存放配置文件
**部署步骤:**
1. **创建 docker-compose.yml 文件:**
```yml
version: "3"
services:
  guacamole-postgres:
    container_name: guacamole-postgres
    image: postgres:latest
    environment:
      POSTGRES_PASSWORD: 123456
      PGDATA: /var/lib/postgresql/data/pgdata
    volumes:
      - /your-path/data:/var/lib/postgresql/data
    network_mode: "bridge"
    restart:
      always
  guacamole-guacd:
    container_name: guacamole-guacd
    image: guacamole/guacd:latest
    network_mode: "bridge"
    restart:
      always
  guacamole-client:
    container_name: guacamole-client
    image: guacamole/guacamole:latest
    environment:
      POSTGRES_DATABASE: guacamole_db
      POSTGRES_USER: sqldata
      POSTGRES_PASSWORD: 234567
    ports:
      - 8080:8080
    network_mode: "bridge"
    links:
      - guacamole-postgres:postgres
      - guacamole-guacd:guacd
    restart:
      always
```
2. **启动项目:**
```shell
docker-compose up -d
```
3. **数据库初始化:**
- 进入 postgres 容器,创建用户 `sqldata`,密码为 `234567`,创建数据库 `guacamole_db`,并授权。
```sql
docker exec -it guacamole-postgres psql -U postgres -d postgres
CREATE USER sqldata WITH PASSWORD '234567';
CREATE DATABASE guacamole_db OWNER sqldata;
GRANT ALL ON DATABASE guacamole_db TO sqldata;
exit
```
- 使用 `guacamole/guacamole` 容器生成数据库初始化脚本。
```shell
docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --postgresql > initdb.sql
```
- 复制脚本到容器内并执行。
```shell
docker cp initdb.sql guacamole-postgres:/
docker exec -it guacamole-postgres psql -U sqldata -d guacamole_db
\i /initdb.sql
exit
rm -f initdb.sql
```
**配置:**
- **数据库持久化:** 在 `docker-compose.yml` 中添加 `PGDATA` 环境变量和数据卷映射。
- **降低用户认证加密级别:** 更改 `pg_hba.conf` 文件的最后一行,将 `scram-sha-256` 修改为 `trust`,并重启 `guacamole-postgres` 容器。
**登录:**
- 访问 `http://yourip:8080/guacamole`,默认用户名和密码为 `guacadmin/guacadmin`。
**使用帮助:**
- 添加 RDP 远程桌面时,勾选 `忽略服务器证书`。
**注意:**
- 修改 `docker-compose.yml` 中的端口映射和数据卷路径。
- 更改默认用户名和密码,确保安全。
- 详细配置步骤和说明请参考官方文档。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|一元网络论坛

GMT+8, 2024-9-17 14:45 , Processed in 0.184263 second(s), 19 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表