Guacamole: различия между версиями
(Новая страница: «Guacamole — бесплатная и свободная программа с открытым исходным кодом, которая после установки на сервер и поднятия RDP-сервера предоставляет вам дистанционный доступ ко всем своим клиентским машинам через веб-интерфейс. То есть на ваш собственный компью...») |
Нет описания правки |
||
(не показана 1 промежуточная версия этого же участника) | |||
Строка 4: | Строка 4: | ||
=== Установка Guacamole === | === Установка Guacamole === | ||
Необходимо установить пакеты: | |||
* {{pkgL|guacd}} — сервер guacamole; | |||
В зависимости от того, какие протоколы необходимо поддерживать, следует установить один или несколько пакетов libguac-client-* для обеспечения поддержки этих протоколов: | |||
* guacd — сервер guacamole; | * {{pkgL|libguac-client-rdp}} — RDP; | ||
В зависимости от того, какие протоколы | * {{pkgL|libguac-client-ssh}} — SSH; | ||
* libguac-client-rdp — RDP; | * {{pkgL|libguac-client-vnc}} — VNC; | ||
* libguac-client-ssh — SSH; | * {{pkgL|libguac-client-telnet}} — telnet. | ||
* libguac-client-vnc — VNC; | |||
* libguac-client-telnet — telnet | Установка пакетов: | ||
<syntaxhighlight lang="bash"># apt-get update | |||
# apt-get install guacd libguac-client-rdp libguac-client-ssh libguac-client-vnc libguac-client-telnet tomcat tomcat-webapps tomcat-admin-webapps tomcat-guacamole-webapps</syntaxhighlight> | |||
=== Настройка Guacamole === | === Настройка Guacamole === | ||
Добавить в автозагрузку и запустить сервисы: | |||
<syntaxhighlight lang="bash"># systemctl enable --now tomcat.service guacd.service</syntaxhighlight> | |||
После установки сервер будет доступен по адресу: '''ip_адрес:8080/guacamole''' | |||
После сервер доступен по адресу: '''ip_адрес:8080/guacamole''' | |||
Тонкая настройка Guacamole: | |||
#Создать зашифрованный пароль (вместо '''password''' следует указать свой пароль): | |||
#:<syntaxhighlight lang="bash"># echo -n password | openssl md5 | |||
(stdin)= 5f4dcc3b5aa765d61d8327deb882cf99</syntaxhighlight> | |||
# Отредактировать файл {{path|/etc/guacamole/user-mapping.xml}}. Указать в нём пользователя и его зашифрованный пароль, а также настройки подключений. Например: | |||
<syntaxhighlight lang="python"> | #: <syntaxhighlight lang="python"> | ||
<user-mapping> | <user-mapping> | ||
<!-- Per-user authentication and config information --> | <!-- Per-user authentication and config information --> | ||
<!-- A user using md5 to hash the password | <!-- A user using md5 to hash the password | ||
<authorize username="admin" | example below uses the md5 hash of "PASSWORD")--> | ||
password="5f4dcc3b5aa765d61d8327deb882cf99" | <authorize | ||
encoding="md5"> | username="admin" | ||
<!-- | password="5f4dcc3b5aa765d61d8327deb882cf99" | ||
<connection name="ssh | encoding="md5"> | ||
<protocol>ssh</protocol> | |||
<param name="hostname">192.168. | <!-- RDP connection --> | ||
<param name="port">22</param> | <connection name="RDP SL"> | ||
</connection> | <protocol>rdp</protocol> | ||
<!-- | <param name="hostname">192.168.0.128</param> | ||
<connection name=" | <param name="port">3389</param> | ||
<protocol> | <param name="username">user</param> | ||
<param name="hostname">192.168. | <param name="ignore-cert">true</param> | ||
<param name="port"> | </connection> | ||
<param name="username"> | |||
<param name=" | <!-- SSH connection --> | ||
</connection> | <connection name="ssh SL"> | ||
</authorize> | <protocol>ssh</protocol> | ||
<param name="hostname">192.168.0.190</param> | |||
<param name="port">22</param> | |||
</connection> | |||
<!-- VNC authorized connection --> | |||
<connection name="VNC WORK"> | |||
<protocol>vnc</protocol> | |||
<param name="hostname">192.168.0.120</param> | |||
<param name="port">5900</param> | |||
<param name="username">user</param> | |||
<param name="password">123</param> | |||
</connection> | |||
</authorize> | |||
</user-mapping> | </user-mapping> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
После | #После внесения изменений в файл {{path|/etc/guacamole/user-mapping.xml}}, перезапустить сервис: | ||
#:<syntaxhighlight lang="bash"># systemctl restart guacd.service</syntaxhighlight> | |||
{{Note|Т.к. tomcat, также как и [[ЦУС#Веб-интерфейс|веб-интерфейс ЦУС]], по умолчанию работает на порту 8080, то перед запуском tomcat необходимо, либо остановить службу ahttpd: | |||
<syntaxhighlight lang="bash"># systemctl disable --now ahttpd</syntaxhighlight> | |||
либо изменить порт 8080 в файле {{path|/etc/tomcat/server.xml}} на другой допустимый номер порта, например 8081: | |||
<syntaxhighlight lang="ini"><Connector port="8081" protocol="HTTP/1.1" | |||
connectionTimeout="20000" | |||
redirectPort="8443" /></syntaxhighlight> | |||
и перезапустить tomcat: | |||
<syntaxhighlight lang="bash"># systemctl restart tomcat</syntaxhighlight>}} | |||
== Подключение == | |||
Веб-интерфейс доступен по адресу: '''ip_адрес:8080/guacamole''': | |||
[[Файл:Guacamole-01.png|Авторизация в веб-интерфейсе Guacamole]] | |||
Доступные подключения: | |||
[[Файл:Guacamole-02.png|Веб-интерфейс Guacamole]] | |||
Пример подключения по ssh: | |||
[[Файл:Guacamole-03.png|Пример подключения по ssh]] | |||
Пример подключения по RDP (на удалённой системе, к которой происходит подключение, должен быть настроен [[Xrdp#Первоначальная_настройка_сервера_XRDP_на_сервере|XRDP-сервер]]): | |||
[[Файл:Guacamole-04.png|Пример подключения по RDP]] | |||
Пример подключения по VNC (на удалённой системе, к которой происходит подключение, должен быть настроен [[VNC|VNC-сервер]]): | |||
[[Файл:Guacamole-05.png|Пример подключения по VNC]] | |||
{{Category navigation|title=Удалённый доступ|category=Удалённый доступ|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 18:08, 16 февраля 2023
Guacamole — бесплатная и свободная программа с открытым исходным кодом, которая после установки на сервер и поднятия RDP-сервера предоставляет вам дистанционный доступ ко всем своим клиентским машинам через веб-интерфейс. То есть на ваш собственный компьютер, с которого вы удалённо администрируете клиентскими машинами, не нужно устанавливать никаких плагинов и стороннего программного обеспечения, всё работает по HTML5.
Установка
Установка Guacamole
Необходимо установить пакеты:
- guacd — сервер guacamole;
В зависимости от того, какие протоколы необходимо поддерживать, следует установить один или несколько пакетов libguac-client-* для обеспечения поддержки этих протоколов:
- libguac-client-rdp — RDP;
- libguac-client-ssh — SSH;
- libguac-client-vnc — VNC;
- libguac-client-telnet — telnet.
Установка пакетов:
# apt-get update
# apt-get install guacd libguac-client-rdp libguac-client-ssh libguac-client-vnc libguac-client-telnet tomcat tomcat-webapps tomcat-admin-webapps tomcat-guacamole-webapps
Настройка Guacamole
Добавить в автозагрузку и запустить сервисы:
# systemctl enable --now tomcat.service guacd.service
После установки сервер будет доступен по адресу: ip_адрес:8080/guacamole
Тонкая настройка Guacamole:
- Создать зашифрованный пароль (вместо password следует указать свой пароль):
# echo -n password | openssl md5 (stdin)= 5f4dcc3b5aa765d61d8327deb882cf99
- Отредактировать файл /etc/guacamole/user-mapping.xml. Указать в нём пользователя и его зашифрованный пароль, а также настройки подключений. Например:
<user-mapping> <!-- Per-user authentication and config information --> <!-- A user using md5 to hash the password example below uses the md5 hash of "PASSWORD")--> <authorize username="admin" password="5f4dcc3b5aa765d61d8327deb882cf99" encoding="md5"> <!-- RDP connection --> <connection name="RDP SL"> <protocol>rdp</protocol> <param name="hostname">192.168.0.128</param> <param name="port">3389</param> <param name="username">user</param> <param name="ignore-cert">true</param> </connection> <!-- SSH connection --> <connection name="ssh SL"> <protocol>ssh</protocol> <param name="hostname">192.168.0.190</param> <param name="port">22</param> </connection> <!-- VNC authorized connection --> <connection name="VNC WORK"> <protocol>vnc</protocol> <param name="hostname">192.168.0.120</param> <param name="port">5900</param> <param name="username">user</param> <param name="password">123</param> </connection> </authorize> </user-mapping>
- После внесения изменений в файл /etc/guacamole/user-mapping.xml, перезапустить сервис:
# systemctl restart guacd.service
# systemctl disable --now ahttpd
либо изменить порт 8080 в файле /etc/tomcat/server.xml на другой допустимый номер порта, например 8081:
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
и перезапустить tomcat:
# systemctl restart tomcat
Подключение
Веб-интерфейс доступен по адресу: ip_адрес:8080/guacamole:
Доступные подключения:
Пример подключения по ssh:
Пример подключения по RDP (на удалённой системе, к которой происходит подключение, должен быть настроен XRDP-сервер):
Пример подключения по VNC (на удалённой системе, к которой происходит подключение, должен быть настроен VNC-сервер):