使用 IRONSECUREDOC

Guacamole Docker(开发人员如何通过PDF安全性进行操作)

发布 2025年三月5日
分享:

什么是 Guacamole Docker?

鳄梨酱Docker 是 Apache Guacamole 的 Docker 化部署,这是一种无客户端的远程桌面网关,允许用户通过网络浏览器访问远程系统,如桌面或服务器,而无需安装额外的软件。 它由两大部分组成:鳄梨酱Web应用程序,作为会话管理和访问的用户界面远程会话和 Guacamole 守护进程(guacd)负责RDP、VNC和SSH连接的协议转换。 它还可以选择与数据库(如MySQL或PostgreSQL)结合使用,以存储用户账户和连接配置。 Guacamole Docker 简化了部署,是平台无关的,支持文件传输和剪贴板共享,并提供对多个远程系统的安全、集中访问。

如何下载和安装 Guacamole Docker?

安装 Docker

您的计算机上必须安装 Docker。 如果尚未安装 Docker,请根据您的操作系统遵循适当的安装程序进行安装:

下载Docker Desktop
  • 访问适用于 Windows 的 Docker 桌面页码.
  • 点击“下载适用于Windows”下载安装程序。
运行安装程序
  • 双击下载的 Docker Desktop Installer.exe。
  • 继续使用设置向导。
  • 选择“使用 WSL 2 而不是 Hyper-V”(强烈推荐).
启用 WSL 2(如果尚未启用)

以管理员身份打开 PowerShell,然后输入以下命令。

wsl --install
wsl --install
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'wsl --install
$vbLabelText   $csharpLabel

如有提示,请重新启动计算机。

按照安装向导的指示进行操作,并在提示时登录您的 Docker Hub 帐户。

拉取 Docker 镜像

Apache Guacamole 包括两个主要的 Docker 镜像:

牛油果守护进程 (guacd)

拉取处理RDP、VNC和SSH协议转换的guacamole/guacd镜像。

docker pull guacamole/guacd

破损图片 添加自 Pixabay,请从您的文件中选择或将图片拖放到此处。

鳄梨酱Web应用程序

拉取一个 guacamole/guacamole 镜像,这将提供网页界面以允许用户连接到远程系统。

docker pull guacamole/guacamole

破损图片 添加自 Pixabay,请从您的文件中选择或将图片拖放到此处。

设置数据库用于身份验证

Apache Guacamole 需要一种机制来验证用户身份。 本节介绍通过 MySQL SQL 脚本进行的数据库身份验证,尽管 Guacamole 身份验证也支持 PostgreSQL 数据库和 MariaDB 以及其他非数据库方法。

docker pull mysql:8

破损图片 添加自 Pixabay,请从您的文件中选择或将图片拖放到此处。

创建一个数据库初始化脚本来创建用于MySQL认证的表:

docker run --rm guacamole/guacamole /opt/guacamole/bin/initdb.sh --mysql > initdb.sql

重命名并移动Guacamole模式中包含的SQL脚本,这些脚本可以在MySQL Docker容器中运行。

docker cp initdb.sql example-mysql:/guac_db.sql

在 MySQL 实用程序 Docker 容器中打开 bash shell。

docker exec -it example-mysql bash

现在的 shell 提示符应该更改为 bash-4.4# 或类似的内容。 在容器的bash shell提示符下,以root用户身份登录MySQL数据库:

mysql -u root -p
mysql -u root -p
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'mysql -u root -p
$vbLabelText   $csharpLabel

提示应再次更改为 MySQL。

破损图片 添加自 Pixabay,请从您的文件中选择或将图片拖放到此处。

在 MySQL 提示符下,修改 root 密码,创建一个新的 MySQL 数据库,并为新创建的数据库创建一个新用户。 在运行以下命令时,将password替换为MySQL根用户和数据库新用户的安全密码字符串。

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'%';
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'%' IDENTIFIED BY 'password';
GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'%';
FLUSH PRIVILEGES;
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'ALTER USER 'root"@"clocalhost' IDENTIFIED BY 'password'; CREATE DATABASE guacamole_db; CREATE USER 'guacamole_user"@"c%' IDENTIFIED BY 'password'; GRANT @SELECT,INSERT,UPDATE,DELETE @ON guacamole_db.* @TO 'guacamole_user"@"c%'; FLUSH PRIVILEGES;
$vbLabelText   $csharpLabel

Guacamole Docker(开发人员如何确保PDF安全):图5 - Guacamole架构

我们可以使用以下命令查看表格中的所有表:

SHOW TABLES;
SHOW TABLES;
Dim TABLES As SHOW
$vbLabelText   $csharpLabel

Guacamole Docker(开发人员如何使用PDF安全性):图6 - SQL表

使用 Docker 命令启动 Guacamole Docker

使用以下 Docker 命令启动 guacd(鳄梨酱守护进程).

docker run -d --name guacd guacamole/guacd

Guacamole Docker(开发人员如何利用其进行PDF安全):图7 - 启动Guacamole Daemon

启动 Guacamole(Web 应用程序)

手动将 guacd 容器和 MySQL 数据库链接到 Guacamole:

docker run --name guacamole-client --link guacd:guacd --link guacamoledb:mysql -e MYSQL_DATABASE=guacdb -e MYSQL_USER=guacamole_user -e MYSQL_PASSWORD=password -d -p 85:8085 guacamole/guacamole

Guacamole Docker(开发人员如何在PDF安全性中使用):图8 - 启动Guacamole Web应用程序

如下所示,让我们验证在运行系统或托管 Docker 的机器上的每个 Docker 容器的状态。

docker ps -a

您应能看到在先前步骤中创建的每个容器。

一旦创建了 Guacamole 客户端容器,我们可以在创建 Guacamole 容器时通过给定的端口号通过网络浏览器访问它。 下面是 Guacamole 客户端登录页面的截图。

Guacamole Docker(开发人员如何使用 PDF 安全性):图 9 - 登录

将 Linux 服务器添加到 Guacamole Connection

验证SSH支持

Guacamole 默认支持 SSH。 确保所需的扩展(guacamole-auth-jdbc 或类似的)及其依赖项已安装。 Guacamole 通常开箱即支持 SSH。

添加 SSH 连接

  • 以管理员身份登录 Guacamole Web 界面。
  • 转到设置 > 连接。
  • 单击新连接。

    Guacamole Docker(开发人员的 PDF 安全性工作原理):图 10 - SSH 连接

基本连接设置

  • 名称:为连接命名,例如,“My SSH Server”。
  • 协议:选择SSH。

SSH连接详细信息

  • 主机名: 输入您想要连接的服务器的IP地址或主机名。
  • 端口: 默认值是22。如果您的SSH服务器使用其他端口,请使用其他的。
  • 用户名: 输入您的SSH登录用户名。
  • 密码: 如果您不使用基于密钥的身份验证,您也可以输入密码。

    鳄梨酱 Docker(对开发人员的 PDF 安全性如何运作):图 11 - 连接详细信息

    现在,退出管理员界面,然后以有权访问新连接的用户身份登录。 从列表中选择连接。

    Guacamole Docker(开发人员如何使用以实现PDF安全):图12 - 用户连接

    它在浏览器中打开SSH会话。

    Guacamole Docker(开发人员如何使用来确保 PDF 安全性):图 13 - SSH 会话

什么是 IronSecureDoc?

IronSecureDoc是一款文档管理和安全实用工具,利用高级加密、复杂的PDF操作和数字签名。 它为公司和开发人员提供了顺畅访问的便利,因此无需任何直接或间接依赖就能更轻松地处理 PDF 文档。 如果该功能使开发人员能够自动创建、上传、操作和以编程方式保护PDF文件和文档,那么它可以称为一种激进的PDF API。

Guacamole Docker(开发人员如何使用进行PDF安全):图14 - IronSecureDoc:PDF安全和合规服务器

此外,IronPDF 是一个 PDF API,它可以从任何类型的数据输入创建 PDF,并通过文本、图像或元数据等参数添加或编辑内容。 它结合了合并多个PDF和制作合成文件、拆分文档、以及用于注释的评论、突出显示或水印的功能。

拉取 IronSecureDoc Docker 镜像 Guacamole SSH

运行以下命令来拉取Docker镜像。

docker pull ironsoftwareofficial/ironsecuredoc:latest

ironsecuredoc:最新的版本如果已提供则替换为给定的版本或标签。

Guacamole Docker(它如何为开发者以及PDF安全性工作):图15 - IronSecureDoc

运行IronSecureDoc Docker容器

使用下载的镜像启动容器。

docker container run --rm -p 8080:8080 -e IronSecureDoc_LicenseKey=<IRONSECUREDOC_LICENSE_KEY> -e ENVIRONMENT=Development -e HTTP_PORTS=8080 ironsoftwareofficial/ironsecuredoc:latest

鳄梨酱 Docker(对开发人员的 PDF 安全性如何工作):图 16 - Docker 容器

访问IronSecureDoc

如果IronSecureDoc具有Web界面,请在浏览器中使用指定的端口打开服务器的IP地址,例如,http://:8080。完成应用程序所需的任何初始设置。

以下是IronSecureDoc网页界面:

Guacamole Docker(开发人员如何在PDF安全中工作):图17 - IronSecureDoc Web界面

curl -X 'POST' \
  'http://localhost:8080/encrypt?user_password=demo' \
  -H 'accept: */*' \
  -H 'Content-Type: multipart/form-data' \
  -F 'pdf_file=@test.pdf;type=application/pdf'

Guacamole Docker(如何为 PDF 安全性开发人员工作):图 18 - API POST

但是如果我们将代码发布到IronSecureDoc API我们可能还希望请求密码,以便使用用户的密码对文档的请求进行加密。 文档的输出文件将自动发送和下载,并会被安全保存。

结论

Apache Guacamole 将为希望通过安全且用户友好的 SSH 界面远程访问并轻松管理容器化应用程序(包括 IronSecureDoc)的用户实现简单的 Docker 集成。 Docker 的灵活性和 Guacamole 提供的便利性使系统管理员能够配置、管理并提供对强大工具的受控访问,而不会将服务器直接暴露给用户。

这将确保可扩展性、安全性和易用性,这些都是组织在使用容器化环境时理想的好处。 提供一个可靠的平台,在应用程序部署、测试甚至生产过程中简化操作,同时让终端用户更容易访问。

可靠且合规:它可以在最大安全性下进行全面审计。 使用IronSecureDoc REST API,安全打印高效的PDF格式和错误处理现在可以轻松集成到由Web、移动和企业系统开发人员开发的应用程序中。 有关IronSecureDoc许可证的信息,请访问许可页面. 有关 Iron Software 产品的详细配置信息,请参阅库套件页码.

雷根·彭

雷根·彭

软件工程师

 LinkedIn

Regan毕业于雷丁大学,拥有电子工程学士学位。在加入Iron Software之前,他的前工作职位要求他专注于单一任务;他在Iron Software最喜欢的是能进行多种工作,无论是增加销售价值、技术支持、产品开发还是营销。他喜欢了解开发人员如何使用Iron Software的库,并利用这些知识不断改进文档和开发产品。
下一步 >
Graylog Docker(它如何为开发人员提供PDF安全性)

准备开始了吗? 版本: 2024.10 刚刚发布

免费下载查看许可证 >