Как установить веб-клиент удаленного рабочего стола Guacamole на Ubuntu 20.04 LTS

Guacamole – это панель управления удаленным рабочим столом с открытым исходным кодом, используемая для управления системами Linux и Windows из веб-браузера. Он поддерживает стандартные протоколы, такие как VNC, RDP, SSH и Kubernetes, и на клиентском компьютере вам не нужно какое-либо дополнительное программное обеспечение . Guacamole поддерживает буфер обмена, передачу файлов через SFTP и позволяет управлять несколькими сеансами удаленного рабочего стола.




Рассмотрим как установить и настроить клиент удаленного рабочего стола Guacamole на сервере Ubuntu 20.04.




Первым делом обновим нашу систему




sudo apt-get update -y




После обновления перезагрузим систему, чтобы изменения вступили в силу.




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




sudo apt-get install make gcc g++ 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 -y




Для предоставления клиентского контента пользователям Guacamole использует Tomcat. Установить его можно с помощью следующей команды:




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




После установки сервера Tomcat запустите службу Tomcat и включите ее запуск при перезагрузке системы с помощью следующей команды:




systemctl start tomcat9
systemctl enable tomcat9




Вы также можете проверить статус службы Tomcat с помощью следующей команды:




systemctl status tomcat9







Установка сервера Guacamole




По умолчанию пакет Guacamole недоступен в репозитории Ubuntu 20.04 по умолчанию. Поэтому вам нужно будет скомпилировать его из исходников.




Сначала загрузите последнюю версию Guacamole с веб-сайта Apache, используя следующую команду:




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




После завершения загрузки извлеките загруженный файл с помощью следующей команды:




tar -xvzf guacamole-server-1.3.0.tar.gz




Перейдем в извлеченный каталог и запустим сценарий конфигурации, чтобы проверить, что все зависимости удовлетворены:




cd guacamole-server-1.3.0
./configure --with-init-dir=/etc/init.d




Если все в порядке, вы должны увидеть следующий результат:







Теперь скомпилируйте и установите Guacamole Server, выполнив следующую команду:




make
make install




Затем выполните следующую команду, чтобы обновить системный кеш установленных библиотек:




ldconfig




Теперь можно включить и запустить службу Guacamole, используя следующую команду




systemctl enable guacd
systemctl start guacd




Проверить статус службы Guacamole можно с помощью следующей команды:




systemctl status guacd







Установка клиента Guacamole




Затем вам нужно будет установить клиент Guacamole на свой сервер. Клиент Guacamole написан на Java и является кроссплатформенным.




Сначала загрузите двоичный файл Guacamole, используя следующую команду:




wget https://mirrors.estointernet.in/apache/guacamole/1.3.0/binary/guacamole-1.3.0.war




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




mkdir /etc/guacamole
mv guacamole-1.3.0.war /etc/guacamole/guacamole.war




Затем создайте символическую ссылку клиента guacamole на каталог веб-приложений Tomcat с помощью следующей команды:




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




Наконец, перезапустите службу Tomcat и Guacamole, чтобы развернуть новое веб-приложение:




systemctl restart tomcat9
systemctl restart guacd




Настройка Guacomole




Далее необходимо настроить пользователей и подключения.




Сначала создайте основной файл конфигурации Guacamole с именем guacamole.properties.




nano /etc/guacamole/guacamole.properties




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




guacd-hostname: localhost
guacd-port:    4822
user-mapping:    /etc/guacamole/user-mapping.xml




Сохраните и закройте файл, когда закончите.




Далее вам нужно будет создать каталоги для библиотеки и расширения. Это можно сделать с помощью следующей команды:




mkdir /etc/guacamole/{extensions,lib}




Затем установите переменную среды домашнего каталога Guacamole и добавьте ее в файл конфигурации /etc/default/tomcat9.




echo "GUACAMOLE_HOME=/etc/guacamole" >> /etc/default/tomcat9




Затем вам нужно будет создать файл с именем user-mapping.xml, чтобы определить пользователя, которому разрешен доступ к веб-интерфейсу Guacamole.




Перед его созданием сгенерируйте хеш md5 для пароля с помощью следующей команды:




echo -n YourSecurePassw0rd | openssl md5




Вы должны увидеть следующий результат:




(stdin) = 7e6a8b547cef30b2b24ac84965f7afdc




Примечание : запомните указанный выше пароль md5. Вам нужно будет определить это в файле user-mapping.xml.




Cоздайте новый файл user-mapping.xml с помощью следующей команды:




nano /etc/guacamole/user-mapping.xml




<user-mapping>
    <authorize 
            username="admin"
            password="7e6a8b547cef30b2b24ac84965f7afdc"
            encoding="md5">

        <connection name="Ubuntu20.04-Server">
            <protocol>ssh</protocol>
            <param name="hostname">192.168.20.5</param>
            <param name="port">22</param>
            <param name="username">root</param>
        </connection>
        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">192.168.20.6</param>
            <param name="port">3389</param>
            <param name="ignore-cert">true</param>
            <param name="color-depth">24</param>
            <param name="width">1920</param>
            <param name="height">1080</param>
        </connection>
    </authorize>
</user-mapping>




Сохраните и закройте файл, когда закончите.




Где:




  • 192.168.20.5 – это IP-адрес удаленного сервера Ubuntu.
  • 192.168.20.6 – это IP-адрес удаляемого сервера Windows.




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




systemctl restart tomcat9
systemctl restart guacd




На этом этапе сервер и клиент Guacamole установлены и настроены.




Доступ к веб-интерфейсу Guacamole




Теперь откройте свой веб-браузер и войдите в веб-интерфейс Guacamole, используя URL-адрес http://your-server-ip:8080/guacamole . Вы будете перенаправлены на страницу входа в Guacamole:







Введите имя пользователя и пароль, которые вы определили в файле user-mapping.xml , и нажмите кнопку «Login» . Вы должны увидеть панель управления Guacamole на следующей странице:







Настроить Nginx для Guacamole




Рекомендуется настроить Nginx в качестве обратного прокси для доступа к Гуакамоле через порт 80.




Сначала установите веб-сервер Nginx, используя следующую команду:




apt-get install nginx -y




После установки Nginx создайте новый файл конфигурации виртуального хоста Nginx:




nano /etc/nginx/sites-available/guacamole.conf




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




server {
        listen 80;
        server_name your-server-ip;
        access_log  /var/log/nginx/guac_access.log;
        error_log  /var/log/nginx/guac_error.log;

        location / {
                    proxy_pass http://your-server-ip:8080/guacamole/;
                    proxy_buffering off;
                    proxy_http_version 1.1;
                    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                    proxy_set_header Upgrade $http_upgrade;
                    proxy_set_header Connection $http_connection;
                    proxy_cookie_path /guacamole/ /;
        }

}




Сохраните и закройте файл, когда закончите. Затем включите виртуальный хост Nginx с помощью следующей команды:




ln -s /etc/nginx/sites-available/guacamole.conf /etc/nginx/sites-enabled/




Перезапустите службу Nginx, чтобы применить изменения конфигурации:




systemctl restart nginx




Теперь вы можете получить доступ к своему Guacamole, используя URL-адрес http://your-server-ip .







Источник: https://admin812.ru/kak-ustanovit-veb-klient-udalennogo-rabochego-stola-guacamole-na-ubuntu-20-04-lts.html



2021-04-11T14:18:55
Software