Apache Guacamole — это мощный шлюз удаленного рабочего стола с открытым исходным кодом, который обеспечивает беспрепятственный доступ к вашим компьютерам из любого места, используя только веб-браузер. Он поддерживает такие стандартные протоколы, как VNC, RDP и SSH, что делает его идеальным решением для удаленного доступа и администрирования.
Необходимые условия
- Сервер под управлением одной из следующих операционных систем: Ubuntu и любой другой дистрибутив на базе Debian, например Linux Mint.
- Рекомендуется использовать свежую установку ОС, чтобы предотвратить возможные проблемы.
- SSH-доступ к серверу (или просто откройте Terminal, если вы находитесь на рабочем столе).
- Не менее 2 ГБ оперативной памяти для оптимальной производительности.
- Достаточное дисковое пространство для сервера Guacamole и его зависимостей (рекомендуется не менее 5 ГБ).
- Активное интернет-соединение. Интернет-соединение понадобится для загрузки необходимых пакетов и зависимостей.
- Система Ubuntu 24.04 с правами root или пользователь с привилегиями sudo.
Установка Apache Guacamole на 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. Установка сервера Guacamole.
Сервер Guacamole, охранник, является основным компонентом, который проксирует подключения к удаленному рабочему столу. Чтобы установить его, выполните следующие действия:
Загрузите последнюю версию исходного кода сервера Guacamole с официального сайта. На момент написания статьи последней версией является 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
Скомпилируйте и установите сервер Guacamole:
make
sudo make install
sudo ldconfig
Запустите и включите службу guacd:
sudo systemctl start guacd
sudo systemctl enable guacd
Установив и запустив сервер Guacamole, вы можете приступить к настройке бэкенда базы данных и установке клиента Guacamole.
Шаг 4. Настройка бэкенда базы данных.
Apache Guacamole использует базу данных для хранения информации об аутентификации и подключении пользователей. Вы можете выбрать MySQL или PostgreSQL. В этом руководстве мы будем использовать MySQL:
sudo apt install mysql-server
Обеспечьте безопасность установки MySQL:
sudo mysql_secure_installation
Следуйте подсказкам, чтобы установить пароль root и настроить параметры безопасности.
Войдите в оболочку MySQL:
sudo mysql -u root -p
Создайте новую базу данных и пользователя для Guacamole:
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;
Загрузите расширение Guacamole 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 обслуживает клиентское веб-приложение Guacamole. Выполните следующие шаги для установки и настройки Tomcat:
Установите Tomcat и его зависимости:
sudo apt install tomcat9 tomcat9-admin tomcat9-common tomcat9-user
Запустите и включите службу Tomcat:
sudo systemctl start tomcat9
sudo systemctl enable tomcat9
Создайте символическую ссылку из файла .war клиента Guacamole в каталог webapps Tomcat:
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.
Клиент 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
Создайте символическую ссылку из файла Guacamole .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. Проверка установки Guacamole.
Чтобы убедиться, что установка Apache Guacamole работает правильно, выполните следующие действия:
Откройте веб-браузер и перейдите на сайт http://your_server_ip:8080/guacamole.
Войдите в систему, используя стандартные учетные данные администратора:
- Имя пользователя: guacadmin
- Пароль: guacadmin
- Если вход прошел успешно, вы должны увидеть веб-интерфейс Guacamole с примером VNC-соединения в списке.
- Нажмите на соединение, чтобы проверить его. При успешном подключении вы должны увидеть удаленный рабочий стол в веб-браузере
Поздравляем! Вы успешно установили Apache Guacamole. Для получения дополнительной помощи или полезной информации мы рекомендуем вам посетить официальный сайт Apache.