Wyszukiwanie w witrynie

Jak zainstalować Guacamole, aby uzyskać dostęp do komputerów z dowolnego miejsca w Ubuntu


Apache Guacamole to bezkliencka brama internetowa typu open source, która zapewnia zdalny dostęp do serwerów, a nawet komputerów klienckich za pośrednictwem przeglądarki internetowej przy użyciu protokołów takich jak SSH, VNC i PROW.

Apache Guacamole składa się z 2 głównych komponentów:

  • Serwer Guacamole: zapewnia wszystkie komponenty serwerowe i natywne wymagane przez Guacamole do łączenia się ze zdalnymi pulpitami.
  • Klient Guacamole: jest to aplikacja internetowa HTML 5 i klient, który umożliwia łączenie się ze zdalnymi serwerami/komputerami stacjonarnymi. Jest to wspierane przez serwer Tomcat.

W tym artykule przeprowadzimy Cię przez proces instalacji Apache Guacamole na Ubuntu 20.04.

Warunki wstępne

Zanim zaczniesz, upewnij się, że masz następujące elementy:

  • Instancja Ubuntu 20.04 LTS ze skonfigurowanym użytkownikiem sudo.
  • Minimum 2GB RAM

Zagłębmy się teraz w szczegóły i zainstalujmy Guacamole na Ubuntu 20.04 LTS.

Na tej stronie

  • Jak zainstalować Apache Guacamole na serwerze Ubuntu
  • Jak zainstalować Tomcat na serwerze Ubuntu
  • Jak zainstalować klienta Guacamole w Ubuntu
  • Jak skonfigurować klienta Guacamole w Ubuntu
  • Jak skonfigurować połączenia serwera Guacamole w Ubuntu
  • Jak uzyskać dostęp do zdalnego serwera Ubuntu za pośrednictwem interfejsu internetowego Guacamole

Krok 1: Instalacja Apache Guacamole na serwerze Ubuntu

1. Instalacja Apache Guacamole odbywa się poprzez kompilację kodu źródłowego. Aby to osiągnąć, wymagane są pewne narzędzia do kompilacji. Dlatego uruchom następującą komendę apt:

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

2. Po zakończeniu instalacji narzędzi do kompilacji kontynuuj i pobierz najnowszy plik źródłowy tarballa ze strony wydania Guacamole. W chwili pisania tego przewodnika najnowszą wersją jest Guacamole w wersji 1.2.0. Aby pobrać najnowszy plik tarballa, po prostu uruchom poniższe polecenie wget.

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

3. Następnie wyodrębnij plik tarballa Guacamole i przejdź do nieskompresowanego folderu.

tar -xvf guacamole-server-1.2.0.tar.gz
cd guacamole-server-1.2.0

4. Następnie wykonaj skrypt konfiguracyjny, aby sprawdzić, czy brakuje jakichś zależności. Zwykle zajmuje to około dwóch minut, więc bądź cierpliwy, ponieważ skrypt wykona sprawdzenie zależności. Wyświetli się mnóstwo wyników, w tym szczegóły dotyczące wersji serwera, jak pokazano.

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

5. Aby skompilować i zainstalować Guacamole, uruchom kolejno poniższe polecenia.

sudo make
sudo make install

6. Następnie uruchom polecenie ldconfig, aby utworzyć odpowiednie łącza i pamięć podręczną do ostatnio udostępnionych bibliotek w katalogu serwera Guacamole.

sudo ldconfig

7. Aby uruchomić serwer Guacamole, uruchomimy demona Guacamoleguacd – i włączymy go uruchom komputer i sprawdź status, jak pokazano.

sudo systemctl start guacd
sudo systemctl enable guacd
sudo systemctl status guacd

Krok 2: Instalowanie Tomcata na serwerze Ubuntu

8. Serwer Tomcat jest wymagany, ponieważ będzie używany do udostępniania treści klienta Guacamole użytkownikom łączącym się z serwerem za pośrednictwem przeglądarki. Dlatego uruchom następujące polecenie, aby zainstalować Tomcat:

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

9. Po instalacji serwer Tomcat powinien działać. Możesz potwierdzić status serwera, jak pokazano:

sudo systemctl status tomcat

10. Jeśli Tomcat nie jest uruchomiony, uruchom go i włącz podczas uruchamiania:

sudo systemctl start tomcat
sudo systemctl enable tomcat

11. Domyślnie Tomcat działa na porcie 8080 i jeśli masz uruchomione UFW, musisz zezwolić ten port, jak pokazano:

sudo ufw allow 8080/tcp
sudo ufw reload

Krok 3: Instalowanie klienta Guacamole w Ubuntu

12. Po zainstalowaniu serwera Tomcat przystąpimy do instalacji klienta Guacamole, który jest aplikacją internetową opartą na Javie, która umożliwia użytkownikom łączenie się do serwera.

Najpierw utworzymy katalog konfiguracyjny, jak pokazano.

sudo mkdir /etc/guacamole

13. Pobierzemy plik binarny klienta Guacamole do katalogu /etc/guacamole za pomocą pokazanego polecenia.

sudo wget https://downloads.apache.org/guacamole/1.2.0/binary/guacamole-1.2.0.war -O /etc/guacamole/guacamole.war

14. Po pobraniu utwórz dowiązanie symboliczne do katalogu Tomcat WebApps, jak pokazano.

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

15. Aby wdrożyć aplikację internetową, zrestartuj zarówno serwer Tomcat, jak i demona Guacamole.

sudo systemctl restart tomcat9
sudo systemctl restart guacd

Krok 4: Konfiguracja klienta Guacamole w Ubuntu

Z Guacamole powiązane są 2 główne pliki konfiguracyjne; plik /etc/guacamole i plik /etc/guacamole/guacamole.properties używany przez Guacamole i jego rozszerzenia.

16. Przed kontynuowaniem musimy utworzyć katalogi dla rozszerzeń i bibliotek.

sudo mkdir /etc/guacamole/{extensions,lib}

17. Następnie skonfiguruj zmienną środowiskową katalogu domowego i dołącz ją do pliku konfiguracyjnego /etc/default/tomcat9.

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

Krok 5: Konfiguracja połączeń serwera Guacamole w Ubuntu

18. Aby ustalić, w jaki sposób Guacamole łączy się z demonem Guacamoleguacd – utworzymy guacamole .properties, jak pokazano.

sudo vim /etc/guacamole/guacamole.properties

Dodaj zawartość poniżej i zapisz plik.

guacd-hostname: localhost
guacd-port:     4822
user-mapping:   /etc/guacamole/user-mapping.xml
auth-provider:  net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider

19. Następnie utworzymy plik user-mapping.xml, który definiuje użytkowników, którzy mogą łączyć się i logować do Guacamole za pośrednictwem interfejsu internetowego przeglądarki.

Zanim to zrobimy, musimy wygenerować zaszyfrowane hasło dla zalogowanego użytkownika, jak pokazano. Pamiętaj, aby zastąpić silne hasło własnym hasłem.

echo -n yourStrongPassword | openssl md5

Powinieneś dostać coś takiego.

(stdin)= efd7ff06c71f155a2f07fbb23d69609

Skopiuj zaszyfrowane hasło i zapisz je gdzieś, ponieważ będzie potrzebne w pliku user-mapping.xml.

20. Teraz utwórz plik user-mapping.xml.

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

Wklej zawartość poniżej.

<user-mapping>
    <authorize 
            username="tecmint"
            password="efd7ff06c71f155a2f07fbb23d69609"
            encoding="md5">

        <connection name="Ubuntu20.04-Focal-Fossa">
            <protocol>ssh</protocol>
            <param name="hostname">173.82.187.242</param>
            <param name="port">22</param>
            <param name="username">root</param>
        </connection>
        <connection name="Windows Server">
            <protocol>rdp</protocol>
            <param name="hostname">173.82.187.22</param>
            <param name="port">3389</param>
        </connection>
    </authorize>
</user-mapping>

Zdefiniowaliśmy dwa profile połączeń, które umożliwiają połączenie się z 2 zdalnymi systemami, które są online:

  • Serwer Ubuntu 20.04 – IP: 173.82.187.242 poprzez protokół SSH
  • Windows Server – IP: 173.82.187.22 poprzez protokół RDP

21. Aby zastosować zmiany, zrestartuj serwer Tomcat i Guacamole:

sudo systemctl restart tomcat9
sudo systemctl restart guacd

Do tego momentu serwer i klient Guacamole został skonfigurowany. Przejdźmy teraz do interfejsu internetowego Guacamole za pomocą przeglądarki.

Krok 6: Dostęp do interfejsu internetowego Guacamole

22. Aby uzyskać dostęp do internetowego interfejsu użytkownika Guacamole, otwórz przeglądarkę i przeglądaj adres swojego serwera, jak pokazano:

http://server-ip:8080/guacamole

23. Zaloguj się przy użyciu danych uwierzytelniających określonych w pliku user-mapping.xml. Po zalogowaniu znajdziesz zdefiniowane przez siebie połączenia z serwerem w pliku wymienionym pod przyciskiem w sekcji WSZYSTKIE POŁĄCZENIA.

24. Aby uzyskać dostęp do serwera Ubuntu 20.04 LTS, kliknij połączenie, co zainicjuje połączenie SSH ze zdalnym serwerem Ubuntu. Zostaniesz poproszony o podanie hasła, a po jego wpisaniu i naciśnięciu ENTER zostaniesz zalogowany do zdalnego systemu, jak pokazano.

W przypadku serwera Windows kliknij odpowiednie połączenie z serwerem i podaj hasło, aby zalogować się do serwera za pośrednictwem protokołu RDP.

Na tym kończy się nasz przewodnik, w którym pokazaliśmy, jak zainstalować i skonfigurować Guacamole na Ubuntu 20.04 LTS.