В этом уроке мы покажем вам, как установить Apache Guacamole в Ubuntu 24.04 LTS. Apache Guacamole — это мощный шлюз удаленного рабочего стола с открытым исходным кодом, который обеспечивает беспрепятственный доступ к вашим компьютерам из любого места, используя только веб-браузер. Он поддерживает стандартные протоколы, такие как VNC, RDP и SSH, что делает его идеальным решением для удаленного доступа и администрирования.

В этой статье предполагается, что у вас есть хотя бы базовые знания Linux, вы умеете использовать оболочку и, самое главное, размещаете свой сайт на собственном VPS. Установка довольно проста и предполагает, что вы работаете под учетной записью root, в противном случае вам может потребоваться добавить ‘sudo‘ к командам для получения root-прав. Я покажу вам пошаговую установку шлюза удаленного рабочего стола с открытым исходным кодом Apache Guacamole в Ubuntu 24.04 (Noble Numbat). Вы можете следовать тем же инструкциям для Ubuntu 22.04 и любого другого дистрибутива на основе Debian, такого как Linux Mint, Elementary OS, Pop!_OS и других.

Предварительные условия

  • Сервер под управлением одной из следующих операционных систем: Ubuntu и любого другого дистрибутива на основе Debian, например Linux Mint.
  • Рекомендуется использовать новую установку ОС, чтобы предотвратить любые потенциальные проблемы.
  • Доступ к серверу по SSH (или просто откройте терминал, если вы находитесь на рабочем столе).
  • Не менее 2 ГБ оперативной памяти для оптимальной производительности.
  • Достаточное дисковое пространство для сервера Гуакамоле и его зависимостей (рекомендуется минимум 5 ГБ).
  • Активное подключение к Интернету. Вам понадобится подключение к Интернету, чтобы загрузить необходимые пакеты и зависимости.
  • Система Ubuntu 24.04 с root-доступом или пользователь с привилегиями sudo.

Установите Apache Гуакамоле в Ubuntu 24.04.

Шаг 1. Обновите системные пакеты.

Прежде чем приступить к установке, убедитесь, что ваши системные пакеты обновлены:

sudo apt update
sudo apt upgrade

Эта команда обновит списки пакетов и обновит все устаревшие пакеты до последних версий. Поддержание вашей системы в актуальном состоянии — это хорошая практика для поддержания стабильности и безопасности.

Шаг 2. Установка зависимостей.

Установите необходимые инструменты сборки и зависимости:

sudo apt install gcc g++ make libcairo2-dev libjpeg-turbo8-dev libpng-dev libtool-bin libossp-uuid-dev libavcodec-dev libavutil-dev libswscale-dev freerdp2-dev libpango1.0-dev libssh2-1-dev libvncserver-dev libtelnet-dev libssl-dev libvorbis-dev libwebp-dev

Шаг 3. Установка сервера гуакамоле.

Сервер гуакамоле, Guard, является основным компонентом, который проксирует подключения к удаленному рабочему столу. Чтобы установить его, выполните следующие действия:

Загрузите последнюю версию исходного кода сервера гуакамоле с официального сайта. На момент написания последней версии является 1.5.5:

wget https://downloads.apache.org/guacamole/1.5.5/source/guacamole-server-1.5.5.tar.gz

Распакуйте скачанный архив:

tar -xzf guacamole-server-1.5.5.tar.gz

Перейдите в извлеченный каталог:

cd guacamole-server-1.5.5

Настройте среду сборки:

./configure --with-init-dir=/etc/init.d

Скомпилируйте и установите сервер гуакамоле:

make
sudo make install
sudo ldconfig

Запустите и включите службу guacd:

sudo systemctl start guacd
sudo systemctl enable guacd

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

Шаг 4. Настройка серверной части базы данных.

Apache Guacamole использует базу данных для хранения информации об аутентификации пользователя и подключении. Вы можете выбирать между MySQL и PostgreSQL. В этом руководстве мы будем использовать MySQL:

sudo apt install mysql-server

Защитите установку MySQL:

sudo mysql_secure_installation

Следуйте инструкциям, чтобы установить пароль root и настроить параметры безопасности.

Войдите в оболочку MySQL:

sudo mysql -u root -p

Создайте новую базу данных и пользователя для гуакамоле:

CREATE DATABASE guacamole_db;
CREATE USER 'guacamole_user'@'localhost' IDENTIFIED BY 'your_password';
GRANT SELECT, INSERT, UPDATE, DELETE ON guacamole_db.* TO 'guacamole_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;

Загрузите расширение MySQL для гуакамоле:

wget https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-auth-jdbc-1.5.5.tar.gz

Распакуйте скачанный архив и скопируйте расширение MySQL в папку /etc/guacamole/extensions каталог:

tar -xzf guacamole-auth-jdbc-1.5.5.tar.gz
sudo mkdir -p /etc/guacamole/extensions
sudo cp guacamole-auth-jdbc-1.5.5/mysql/guacamole-auth-jdbc-mysql-1.5.5.jar /etc/guacamole/extensions/

Серверная часть базы данных теперь настроена, и вы можете приступить к установке и настройке Tomcat.

Шаг 5. Установка и настройка Tomcat.

Apache Tomcat обслуживает клиентское веб-приложение гуакамоле. Выполните следующие действия, чтобы установить и настроить Tomcat:

Установите Tomcat и его зависимости:

sudo apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-user

Запустите и включите службу Tomcat:

sudo systemctl start tomcat9
sudo systemctl enable tomcat9

Создайте символическую ссылку из клиента Гуакамоле. .war файл в Tomcat webapps каталог:

sudo ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/

Настройте guacamole.properties файл:

sudo nano /etc/guacamole/guacamole.properties

Добавьте в файл следующие строки:

guacd-hostname: localhost
guacd-port: 4822
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password: your_password

Перезапустите службу Tomcat, чтобы применить изменения:

sudo systemctl restart tomcat9

Шаг 6. Установка клиента гуакамоле.

Клиент Guacamole — это веб-приложение, которое позволяет пользователям получать доступ к удаленным рабочим столам через веб-браузер. Чтобы установить клиент, выполните следующие действия:

wget https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-1.5.5.war

Создайте /etc/guacamole каталог и переместите загруженный .war файл там:

sudo mkdir /etc/guacamole
sudo mv guacamole-1.5.5.war /etc/guacamole/guacamole.war

Создайте символическую ссылку из гуакамоле .war файл в Tomcat webapps каталог:

sudo ln -s /etc/guacamole/guacamole.war /var/lib/tomcat9/webapps/

Создайте guacamole.properties файл:

sudo nano /etc/guacamole/guacamole.properties

Добавьте в файл следующие строки:

guacd-hostname: localhost
guacd-port: 4822
mysql-hostname: localhost
mysql-port: 3306
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password: your_password

Создайте user-mapping.xml файл для базовой аутентификации:

sudo nano /etc/guacamole/user-mapping.xml

Добавьте в файл следующее содержимое:

<user-mapping>
<authorize username="guacadmin" password="guacadmin">
<connection name="Example">
<protocol>vnc</protocol>
<param name="hostname">localhost</param>
<param name="port">5900</param>
</connection>
</authorize>
</user-mapping>

Перезапустите службу Tomcat, чтобы применить изменения:

sudo systemctl restart tomcat9

Шаг 7. Тестирование установки гуакамоле.

Чтобы убедиться, что ваша установка Apache Guacamole работает правильно, выполните следующие действия:

    1. Откройте веб-браузер и перейдите к http://your_server_ip:8080/guacamole.
    2. Войдите в систему, используя учетные данные администратора по умолчанию:
      • Имя пользователя: guacadmin
      • Пароль: guacadmin
    3. Если вход в систему прошел успешно, вы должны увидеть веб-интерфейс гуакамоле с указанием примера подключения VNC.
    4. Нажмите на соединение, чтобы проверить его. Если соединение установлено успешно, вы должны увидеть удаленный рабочий стол в своем веб-браузере.

Установите Apache Гуакамоле в Ubuntu 24.04.