Si të instaloni dhe përdorni Apache Guacamole Remote Desktop në Rocky Linux 8
Apache Guacamole është një portë desktopi në distancë, pa pagesë, me burim të hapur, pa klient. Ai mbështet protokollet standarde si SSH, RDP dhe VNC. Nuk ka nevojë për shtojca dhe klientë të palëve të treta për të punuar. Mund të hyni në kompjuterin tuaj duke përdorur një portë të bazuar në ueb. Mund të vendoset pas një serveri proxy i cili ju lejon të përdorni serverët tuaj nga kudo në botë.
Guacamole përbëhet nga dy përbërës:
server-guacamole
përmban të gjithë përbërësit vendas, nga ana e serverit, të kërkuara nga Guacamole për t'u lidhur me desktopët e largët.guacd
është proxy daemon që funksionon në serverin Guacamole, pranon lidhjet e përdoruesve dhe më pas i lidh ato me desktopët e largët.guacamole-client
përmban të gjithë komponentët Java dhe Javascript të Guacamole që përbëjnë aplikacionin në internet ku përdoruesit mund të lidhen me desktopët e tyre.
Në këtë tutorial, do të mësoni se si të instaloni dhe përdorni Apache Guacamole në një server të bazuar në Rocky Linux 8. Do të mësoni gjithashtu se si ta përdorni për t'u lidhur me një desktop në distancë. Ne do të instalojmë Guacamole duke ndërtuar nga kodi i tij burimor.
Parakushtet
-
A server running Rocky Linux 8 with a minimum of 2GB RAM and 2 CPU Cores.
-
A domain name for the helpdesk pointing to the server. For our tutorial, we will use the
uvdesk.example.com
domain. -
A non-root based user with sudo privileges.
-
Make sure everything is updated.
$ sudo dnf update
-
Install basic utility packages. Some of them may already be installed.
$ sudo dnf install wget curl nano unzip yum-utils -y
Hapi 1 - Konfiguro Firewall
Hapi i parë është konfigurimi i murit të zjarrit. Rocky Linux përdor Firewall-in e Firewalld. Kontrolloni statusin e mureve të zjarrit.
$ sudo firewall-cmd --state
running
Firewall punon me zona të ndryshme dhe zona publike është ajo e paracaktuar që do të përdorim. Listoni të gjitha shërbimet dhe portat aktive në murin e zjarrit.
$ sudo firewall-cmd --permanent --list-services
Duhet të tregojë daljen e mëposhtme.
cockpit dhcpv6-client ssh
Lejo portet HTTP dhe HTTPS.
$ sudo firewall-cmd --permanent --add-service=http
$ sudo firewall-cmd --permanent --add-service=https
Rishikoni statusin e murit të zjarrit.
$ sudo firewall-cmd --permanent --list-services
Ju duhet të shihni një dalje të ngjashme.
cockpit dhcpv6-client http https ssh
Ringarko murin e zjarrit për të aktivizuar ndryshimet.
$ sudo firewall-cmd --reload
Hapi 2 - Instaloni Bibliotekat
Përpara se të instalojmë bibliotekat, duhet të instalojmë depo EPEL dhe të aktivizojmë depon e PowerTools.
$ sudo dnf install epel-release -y
$ sudo dnf config-manager --set-enabled powertools
Hapi i parë është instalimi i bibliotekave të nevojshme për të ndërtuar Guacamole. Instaloni bibliotekat e kërkuara.
$ sudo dnf install cairo-devel libjpeg-turbo-devel libjpeg-devel libpng-devel libtool libuuid-devel uuid-devel make cmake
Varësitë e mësipërme janë të detyrueshme, që do të thotë se pa to, Guacamole nuk mund të ndërtohet. Mund të instaloni disa varësi opsionale për të shtuar mbështetje për protokolle dhe veçori të ndryshme.
Por së pari, duhet të aktivizoni Depo RPMFusion Falas sepse përmban paketën ffmpeg-devel
.
$ sudo dnf install --nogpgcheck https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-8.noarch.rpm
Instaloni varësitë opsionale.
$ sudo dnf install ffmpeg-devel freerdp-devel pango-devel libssh2-devel libtelnet-devel libvncserver-devel libwebsockets-devel pulseaudio-libs-devel openssl-devel compat-openssl10 libvorbis-devel libwebp-devel libgcrypt-devel
Hapi 3 - Instaloni Apache Tomcat
Për tutorialin tonë, ne do të instalojmë Apache Tomcat 9, i cili kërkon Java 8 dhe më vonë për të punuar.
Instaloni Java
Ne do të instalojmë OpenJDK 11, implementimin me burim të hapur të platformës Java.
Ekzekutoni komandën e mëposhtme për të instaluar OpenJDK.
$ sudo dnf install java-11-openjdk-devel
Verifikoni instalimin.
$ java -version
openjdk 11.0.14 2022-01-18 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.14+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.14+9-LTS, mixed mode, sharing)
Krijo përdorues Tomcat
Më pas, krijoni një përdorues për shërbimin Tomcat. Ne do të vendosim /opt/tomcat
si direktoriumin kryesor.
$ sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
Shkarko Tomcat
Versioni më i fundit i Tomcat v10 mund të shkarkohet nga faqja e tij e shkarkimit. Në kohën e shkrimit të këtij tutoriali, v9.0.59 është versioni më i fundit i disponueshëm. Kontrolloni versionin më të fundit përpara se të shkarkoni Tomcat.
Përdorni wget
për të shkarkuar Tomcat.
$ TVERSION=9.0.59
$ wget https://dlcdn.apache.org/tomcat/tomcat-9/v${TVERSION}/bin/apache-tomcat-${TVERSION}.tar.gz
Ekstraktoni skedarin në drejtorinë /opt/tomcat
.
$ sudo tar -xf apache-tomcat-${TVERSION}.tar.gz --strip-components=1 -C /opt/tomcat/
Ndrysho pronësinë e drejtorisë tek përdoruesi Tomcat.
$ sudo chown -R tomcat:tomcat /opt/tomcat
Krijoni një skedar të njësisë së sistemit dhe filloni Tomcat
Krijoni dhe hapni skedarin /etc/systemd/system/tomcat.service
për modifikim.
$ sudo nano /etc/systemd/system/tomcat.service
Ngjit kodin e mëposhtëm.
[Unit]
Description=Apache Tomcat 9 Servlet container
Wants=network.target
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.awt.headless=true"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
Restart=always
[Install]
WantedBy=multi-user.target
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet të ruani.
Ringarko demonin e shërbimit për të aktivizuar shërbimin Tomcat.
$ sudo systemctl daemon-reload
Aktivizo dhe nis shërbimin Tomcat.
$ sudo systemctl enable tomcat --now
Kontrolloni statusin e shërbimit.
$ sudo systemctl status tomcat
? tomcat.service - Apache Tomcat 9 Servlet container
Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2022-03-09 09:48:38 UTC; 8s ago
Process: 25308 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
Main PID: 25315 (java)
Tasks: 29 (limit: 11412)
Memory: 154.9M
CGroup: /system.slice/tomcat.service
??25315 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties ..
Mar 09 09:48:38 guacamole systemd[1]: Starting Apache Tomcat 9 Servlet container...
Mar 09 09:48:38 guacamole systemd[1]: Started Apache Tomcat 9 Servlet container.
Hapi 4 - Shkarkoni dhe ndërtoni Guacamole
Ju mund të merrni 1.4.0. Shkarkoni kodin burimor të Guacamole.
$ GVERSION=1.4.0
$ wget https://downloads.apache.org/guacamole/${GVERSION}/source/guacamole-server-${GVERSION}.tar.gz
Ekstraktoni arkivin dhe kaloni në drejtorinë e sapokrijuar.
$ tar -xzf guacamole-server-${GVERSION}.tar.gz
$ cd guacamole-server-${GVERSION}/
Ekzekutoni komandën konfiguro
për të përcaktuar se cilat biblioteka janë të disponueshme dhe për të zgjedhur komponentët për ndërtim.
$ ./configure --with-systemd-dir=/etc/systemd/system/
Drejtoria /etc/systemd/system/
është vendi ku skripti i nisjes do të instalohet gjatë procesit të ndërtimit për të konfiguruar Guacamole që të fillojë automatikisht në nisje.
Ju do të merrni rezultatin e mëposhtëm pas përfundimit të suksesshëm.
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
...
------------------------------------------------
guacamole-server version 1.4.0
------------------------------------------------
Library status:
freerdp2 ............ yes
pango ............... yes
libavcodec .......... yes
libavformat.......... yes
libavutil ........... yes
libssh2 ............. yes
libssl .............. yes
libswscale .......... yes
libtelnet ........... yes
libVNCServer ........ yes
libvorbis ........... yes
libpulse ............ yes
libwebsockets ....... yes
libwebp ............. yes
wsock32 ............. no
Protocol support:
Kubernetes .... yes
RDP ........... yes
SSH ........... yes
Telnet ........ yes
VNC ........... yes
Services / tools:
guacd ...... yes
guacenc .... yes
guaclog .... yes
FreeRDP plugins: /usr/lib64/freerdp2
Init scripts: no
Systemd units: /etc/systemd/system/
Type "make" to compile guacamole-server.
Nëse nuk keni disa biblioteka të instaluara, do të shihni jo
në vend të po
në dalje. Por nëse mungon një bibliotekë kritike, komanda do të dështojë. Për të kontrolluar për më shumë opsione konfigurimi, ekzekutoni komandën ./configure --help
.
Përpiloni dhe instaloni serverin Guacamole duke përdorur komandat e mëposhtme.
$ make && sudo make install
Ekzekutoni komandën e mëposhtme për të përditësuar cache-in e sistemeve të bibliotekave të instaluara.
$ sudo ldconfig
Rifresko demonin e shërbimit.
$ sudo systemctl daemon-reload
Aktivizo dhe nis shërbimin Guacamole.
$ sudo systemctl enable guacd --now
Verifikoni statusin e shërbimit.
$ sudo systemctl status guacd
? guacd.service - Guacamole Server
Loaded: loaded (/etc/systemd/system/guacd.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2022-03-10 09:13:41 UTC; 7s ago
Docs: man:guacd(8)
Main PID: 85349 (guacd)
Tasks: 1 (limit: 11181)
Memory: 10.8M
CGroup: /system.slice/guacd.service
??85349 /usr/local/sbin/guacd -f
Mar 10 09:13:41 guacamole systemd[1]: Started Guacamole Server.
Mar 10 09:13:41 guacamole guacd[85349]: Guacamole proxy daemon (guacd) version 1.4.0 started
Mar 10 09:13:41 guacamole guacd[85349]: guacd[85349]: INFO: Guacamole proxy daemon (guacd) version 1.4.0 started
Mar 10 09:13:41 guacamole guacd[85349]: guacd[85349]: INFO: Listening on host ::1, port 4822
Mar 10 09:13:41 guacamole guacd[85349]: Listening on host ::1, port 4822
Hapi 5 - Instaloni Guacamole Client
Tani që keni instaluar serverin, hapi tjetër është instalimi i klientit.
Krijo drejtorinë e konfigurimit për Guacamole.
$ sudo mkdir /etc/guacamole
Ndryshe nga serveri Guacamole, klienti Guacamole është i disponueshëm në kodin burimor dhe në formë binare. Për tutorialin tonë, ne do të shkarkojmë binarin. Sidoqoftë, mund të zgjidhni të ndërtoni klientin nga burimi.
Shkarkoni binarin e klientit Guacamole nga faqja e internetit.
$ sudo wget https://downloads.apache.org/guacamole/${GVERSION}/binary/guacamole-${GVERSION}.war -O /etc/guacamole/guacamole.war
Komanda e mësipërme shkarkon dhe kopjon skedarin binar Guacamole në drejtorinë /etc/guacamole
.
Që klienti të funksionojë, ai duhet të vendoset nga direktoria Tomcats, e cila është $CATALINA_HOME/webapps/
. Në hapin 3, ne vendosëm /opt/tomcat
si $CATALINA_HOME
.
Ekzekutoni komandën e mëposhtme për të krijuar një lidhje simbolike nga /etc/guacamole/guacamole.war
në drejtorinë e aplikacioneve ueb Tomcat.
$ sudo ln -s /etc/guacamole/guacamole.war /opt/tomcat/webapps/
Ndrysho lejen e aplikacionit në përdorues tomcat
.
$ sudo chown -R tomcat:tomcat /opt/tomcat/webapps
Krijo skedarin e konfigurimit të aplikacionit në internet në /etc/guacamole/guacd.conf
.
$ sudo nano /etc/guacamole/guacd.conf
Vendos kodin e mëposhtëm në të. Zëvendësoni your_server_IP
me adresën IP publike të serverëve tuaj.
#
# guacd configuration file
#
[daemon]
#pid_file = /var/run/guacd.pid
log_level = info
[server]
bind_host = your_server_IP
bind_port = 4822
#
# The following parameters are valid only if
# guacd was built with SSL support.
#
# [ssl]
# server_certificate = /etc/ssl/certs/guacd.crt
# server_key = /etc/ssl/private/guacd.key
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet të ruani.
Rinisni serverin Guacamole dhe Tomcat për të aplikuar ndryshimet.
$ sudo systemctl restart tomcat guacd
Hapi 6 - Instaloni dhe konfiguroni MySQL
Apache Guacamole ofron lloje të ndryshme të metodave të vërtetimit. Për qëllime testimi, mjafton vërtetimi i thjeshtë i bazuar në fjalëkalim. Por për mjediset e prodhimit, ne duhet të zbatojmë një metodë më të fortë dhe më të mirë të vërtetimit. Këtu, ne do të zbatojmë vërtetimin e bazuar në bazën e të dhënave duke përdorur MySQL.
Instaloni MySQL.
$ sudo dnf install mysql-server
Aktivizo dhe nis shërbimin MySQL.
$ sudo systemctl enable mysqld --now
Instalim i sigurt MySQL.
$ sudo mysql_secure_installation
Për hapin e parë, do t'ju pyesin nëse dëshironi të konfiguroni shtesën Validate Password, të cilën mund ta përdorni për të testuar fuqinë e fjalëkalimit tuaj MySQL. Zgjidhni Y
për të vazhduar. Do t'ju kërkohet të zgjidhni nivelin e vërtetimit të fjalëkalimit në hapin tjetër. Zgjidhni 2
i cili është niveli më i fortë dhe do të kërkojë që fjalëkalimi juaj të jetë të paktën tetë karaktere dhe të përfshijë një përzierje të shkronjave të mëdha, të vogla, numerike dhe të veçanta.
Securing the MySQL server deployment.
Connecting to MySQL using a blank password.
VALIDATE PASSWORD COMPONENT can be used to test passwords
and improve security. It checks the strength of password
and allows the users to set only those passwords which are
secure enough. Would you like to setup VALIDATE PASSWORD component?
Press y|Y for Yes, any other key for No: Y
There are three levels of password validation policy:
LOW Length >= 8
MEDIUM Length >= 8, numeric, mixed case, and special characters
STRONG Length >= 8, numeric, mixed case, special characters and dictionary file
Please enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 2
Në hapin tjetër do t'ju kërkohet të zgjidhni një fjalëkalim root. Zgjidhni një fjalëkalim të fortë që plotëson kërkesat e shtojcës së verifikimit të fjalëkalimit. Në hapin tjetër, do t'ju kërkohet nëse duhet të vazhdoni me fjalëkalimin e zgjedhur. Shtypni y
për të vazhduar.
Please set the password for root here.
New password:
Re-enter new password:
Estimated strength of the password: 100
Do you wish to continue with the password provided?(Press y|Y for Yes, any other key for No) : Y
Shtypni Y
dhe më pas tastin ENTER
për të gjitha kërkesat e mëposhtme për të hequr përdoruesit anonimë dhe bazën e të dhënave testuese, për të çaktivizuar hyrjet në rrënjë dhe për të ngarkuar rregullat e vendosura rishtazi.
...
Remove anonymous users? (Press y|Y for Yes, any other key for No) : Y
Success.
...
Disallow root login remotely? (Press y|Y for Yes, any other key for No) : Y
Success.
...
Remove test database and access to it? (Press y|Y for Yes, any other key for No) : Y
- Dropping test database...
Success.
- Removing privileges on test database...
Success.
Reloading the privilege tables will ensure that all changes
made so far will take effect immediately.
...
Reload privilege tables now? (Press y|Y for Yes, any other key for No) : Y
Success.
All done!
Futni guaskën MySQL. Futni fjalëkalimin tuaj root për të vazhduar.
$ mysql -u root -p
Krijo përdorues guacamole_user
. Sigurohuni që fjalëkalimi plotëson kërkesat e përcaktuara më parë.
mysql> CREATE USER 'guacamole_user'@'localhost' IDENTIFIED BY 'Your_password2';
Krijo bazën e të dhënave guacamole_db
.
mysql> CREATE DATABASE guacamole_db;
Jepni privilegjet e përdoruesit në bazën e të dhënave guacamole_db
.
mysql> GRANT SELECT,INSERT,UPDATE,DELETE ON guacamole_db.* TO 'guacamole_user'@'localhost';
Dilni nga Shell.
mysql> exit
Hapi 7 - Konfiguro Apache Guacamole
Drejtoria e konfigurimit të Guacamoles përcaktohet nga ndryshorja, GUACAMOLE_HOME
. Të gjithë skedarët e konfigurimit, shtesat, etj., janë në këtë direktori. Skedari /etc/guacamole/guacamole.properties
ruan të gjitha konfigurimet dhe cilësimet për Guacamole dhe shtesat e tij.
Shtesat dhe bibliotekat kërkojnë drejtori shtesë. Krijoni ato.
$ sudo mkdir /etc/guacamole/{extensions,lib}
Vendosni variablin shtëpiak Guacamole dhe ruajeni në skedarin e konfigurimit /etc/default/tomcat
.
$ echo "GUACAMOLE_HOME=/etc/guacamole" | sudo tee -a /etc/default/tomcat
Konfiguro vërtetimin e bazës së të dhënave Apache Guacamole
Ne kemi vendosur tashmë bazën e të dhënave për Guacamole në hapin e mëparshëm. Ne duhet të shkarkojmë shtojcën e vërtetimit Guacamole JDBC dhe bibliotekën MySQL Java Connector për të përfunduar konfigurimin.
Shkarkoni shtesën Guacamole JDBC nga faqja e saj e internetit.
$ cd ~
$ wget https://downloads.apache.org/guacamole/${GVERSION}/binary/guacamole-auth-jdbc-${GVERSION}.tar.gz
Ekstraktoni shtojcën në drejtorinë /etc/guacamole/extensions
.
$ tar -xf guacamole-auth-jdbc-${GVERSION}.tar.gz
$ sudo mv guacamole-auth-jdbc-${GVERSION}/mysql/guacamole-auth-jdbc-mysql-${GVERSION}.jar /etc/guacamole/extensions/
Hapi tjetër është importimi i skemës SQL në bazën e të dhënave MySQL. Kalo te drejtoria e shtojcave të nxjerra.
$ cd guacamole-auth-jdbc-${GVERSION}/mysql/schema
Importoni skedarët e skemës në MySQL.
$ cat *.sql | mysql -u root -p guacamole_db
Shkarkoni MySQL Java Connector. Merrni skedarin e arkivit të pavarur nga platforma. Në kohën e shkrimit të këtij tutoriali, versioni më i fundit i disponueshëm është 8.0.28.
$ cd ~
$ wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.28.tar.gz
Ekstraktoni arkivin dhe kopjoni përmbajtjen e tij në drejtorinë /etc/guacamole/lib
.
$ tar -xf mysql-connector-java-8.0.28.tar.gz
$ sudo mv mysql-connector-java-8.0.28/mysql-connector-java-8.0.28.jar /etc/guacamole/lib/
Konfiguro skedarin e vetive të Guacamole
Krijo skedarin /etc/guacamole/guacamole.properties
dhe hape atë për redaktim.
$ sudo nano /etc/guacamole/guacamole.properties
Vendos kodin e mëposhtëm në të. Zëvendësoni your_server_ip
me adresën IP publike të serverëve tuaj.
guacd-hostname: your_server_ip
guacd-port: 4822
# MySQL properties
mysql-hostname: localhost
mysql-database: guacamole_db
mysql-username: guacamole_user
mysql-password: Your_password2
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet të ruani.
Lidhni direktorinë e konfigurimit të Guacamole me direktorinë servlet të Tomcat.
$ sudo ln -s /etc/guacamole /opt/tomcat/.guacamole
Rinisni Tomcat për të aktivizuar vërtetimin e bazës së të dhënave. Ju nuk keni nevojë të rinisni guacd
sepse është plotësisht i pavarur nga aplikacioni në internet dhe nuk merret me guacamole.properties
ose vërtetimin e bazës së të dhënave në asnjë mënyrë .
$ sudo systemctl restart tomcat
Hapi 8 - Instaloni SSL
Për të instaluar një certifikatë SSL duke përdorur Lets Encrypt, duhet të instalojmë mjetin Certbot. Certbot kërkon depo EPEL për instalim, por ne mund të vazhdojmë drejtpërdrejt me instalimin pasi e kemi instaluar tashmë më herët.
Ekzekutoni komandat e mëposhtme për të instaluar Certbot.
$ sudo dnf install certbot
Gjeneroni certifikatën SSL.
$ sudo certbot certonly --standalone --agree-tos --no-eff-email --staple-ocsp --preferred-challenges http -m -d guacamole.example.com
Komanda e mësipërme do të shkarkojë një certifikatë në drejtorinë /etc/letsencrypt/live/guacamole.example.com
në serverin tuaj.
Krijo një certifikatë grupi Diffie-Hellman.
$ sudo openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
Krijoni një drejtori sfide webroot për rinovimin automatik të Lets Encrypt.
$ sudo mkdir -p /var/lib/letsencrypt
Krijo një Cron Job për të rinovuar SSL. Do të funksionojë çdo ditë për të kontrolluar certifikatën dhe për të rinovuar nëse është e nevojshme. Për këtë, së pari, krijoni skedarin /etc/cron.daily/certbot-renew
dhe hapeni atë për redaktim.
$ sudo nano /etc/cron.daily/certbot-renew
Ngjit kodin e mëposhtëm.
#!/bin/sh
certbot renew --cert-name guacamole.example.com --webroot -w /var/lib/letsencrypt/ --post-hook "systemctl reload nginx"
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet.
Ndryshoni lejet në skedarin e detyrës për ta bërë atë të ekzekutueshëm.
$ sudo chmod +x /etc/cron.daily/certbot-renew
Hapi 9 - Instaloni dhe konfiguroni Nginx si përfaqësues të kundërt
Konfiguro Tomcat për lidhjen e kundërt të përfaqësuesit
Përpara se të instalojmë Nginx, duhet të konfigurojmë Tomcat që të kalojë përmes adresës IP të largët të ofruar nga përfaqësuesi i kundërt Nginx.
Hapni skedarin /opt/tomcat/conf/server.xml
për modifikim.
$ sudo nano /opt/tomcat/conf/server.xml
Gjeni rreshtin e mëposhtëm në skedar.
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
Ndryshoni rreshtin duke ngjitur kodin shtesë poshtë tij, kështu që të duket si më poshtë.
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.RemoteIpValve"
internalProxies="127.0.0.1"
remoteIpHeader="x-forwarded-for"
remoteIpProxiesHeader="x-forwarded-by"
protocolHeader="x-forwarded-proto" />
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet.
Instaloni Nginx
Rocky Linux 8.5 shpërndahet me versionin më të fundit të qëndrueshëm të Nginx. Instaloni atë duke përdorur komandën e mëposhtme.
$ sudo dnf module install nginx:1.20
Verifikoni instalimin.
$ nginx -v
nginx version: nginx/1.20.1
Aktivizo shërbimin Nginx.
$ sudo systemctl enable nginx
Krijoni dhe hapni skedarin /etc/nginx/conf.d/guacamole.conf
për modifikim.
$ sudo nano /etc/nginx/conf.d/guacamole.conf
Vendos kodin e mëposhtëm në të.
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name guacamole.example.com;
access_log /var/log/nginx/guacamole.access.log;
error_log /var/log/nginx/guacamole.error.log;
# SSL
ssl_certificate /etc/letsencrypt/live/guacamole.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/guacamole.example.com/privkey.pem;
ssl_trusted_certificate /etc/letsencrypt/live/guacamole.example.com/chain.pem;
ssl_session_timeout 5m;
ssl_session_cache shared:MozSSL:10m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384;
ssl_ecdh_curve X25519:prime256v1:secp384r1:secp521r1;
ssl_stapling on;
ssl_stapling_verify on;
ssl_dhparam /etc/ssl/certs/dhparam.pem;
resolver 8.8.8.8;
location / {
proxy_pass http://127.0.0.1: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;
client_max_body_size 1g;
access_log off;
}
}
# enforce HTTPS
server {
listen 80;
listen [::]:80;
server_name guacamole.example.com;
return 301 https://$host$request_uri;
}
Ruaje skedarin duke shtypur Ctrl + X dhe duke futur Y kur të kërkohet pasi të përfundojë.
Hapni skedarin /etc/nginx/nginx.conf
për modifikim.
$ sudo nano /etc/nginx/nginx.conf
Shtoni rreshtin e mëposhtëm përpara rreshtit include /etc/nginx/conf.d/*.conf;
.
server_names_hash_bucket_size 64;
Ruani skedarin duke shtypur Ctrl + X dhe duke futur Y kur ju kërkohet.
Verifikoni sintaksën e skedarit të konfigurimit Nginx.
$ sudo nginx -t
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Rregulloni lejen e SELinux për të lejuar Nginx të bëjë lidhje rrjeti.
$ sudo setsebool -P httpd_can_network_connect 1
Nisni shërbimin Nginx për të aktivizuar konfigurimin e ri.
$ sudo systemctl start nginx
Rinisni serverin Tomcat për të aplikuar ndryshimin e konfigurimit.
$ sudo systemctl restart tomcat
Hapi 10 - Hyrja në Guacamole
Hapni URL-në https://guacamole.example.com
në shfletuesin tuaj dhe do të përshëndeteni me ekranin e mëposhtëm.
Fut guacadmin
si emër përdoruesi dhe guacadmin
si fjalëkalim dhe kliko Identifikohu për të vazhduar.
Krijo një Përdorues të ri Admin
Ju duhet të krijoni një përdorues të ri dhe të fshini përdoruesin ekzistues për qëllime sigurie. Për ta bërë këtë, klikoni në guacadmin
lart djathtas dhe klikoni në menynë Cilësimet nga menyja rënëse.
Kalo te skeda Përdoruesit dhe kliko në butonin Përdorues i ri për të filluar.
Futni të dhënat tuaja dhe shënoni të gjitha lejet.
Kliko Ruaj kur të përfundojë. Dilni nga përdoruesi guacadmin dhe identifikohuni përsëri duke përdorur përdoruesin e krijuar rishtazi.
Kthehuni në ekranin e përdoruesve. zgjidhni përdoruesin guacadmin për ta modifikuar dhe kliko butonin Fshi në fund për të fshirë përdoruesin.
Hapi 11 - Si të përdorni Guacamole
Për tutorialin tonë, ne do t'ju tregojmë se si të lidheni me një server duke përdorur protokollin SSH.
Shkoni te menyja Cilësimet të Guacamole dhe zgjidhni Lidhjet. Nën ekranin Lidhjet, shtypni butonin Lidhje e re.
Zgjidhni një emër për lidhjen dhe zgjidhni SSH si protokoll nga menyja rënëse.
Në seksionin Parametrat, shkruani adresën IP të serverit tuaj si emër pritës, 22 si port (ose nëse keni një port të personalizuar SSH, përdorni atë) dhe emrin tuaj të përdoruesit. Nëse jeni duke përdorur vërtetimin e bazuar në fjalëkalim, futni fjalëkalimin e përdoruesit ose ngjisni çelësin privat. Futni frazën e kalimit për çelësin privat nëse po e përdorni.
Nëse dëshironi të aktivizoni ndonjë cilësim shtesë, bëjeni këtë. Kliko Ruaj për të përfunduar shtimin e lidhjes.
Kthehuni në panelin e kontrollit dhe klikoni në emrin e lidhjes nën Të gjitha lidhjet dhe do të çoheni në terminalin SSH.
konkluzioni
Kjo përfundon tutorialin tonë për instalimin dhe përdorimin e Apache Guacamole për të krijuar një lidhje SSH në një server të bazuar në Rocky Linux 8. Nëse keni ndonjë pyetje, postojini ato në komentet më poshtë.