Cài đặt và sử dụng Guacamole Remote Desktop trên CentOS 8

theanh

Administrator
Nhân viên
Apache Guacamole là một ứng dụng máy tính từ xa miễn phí, mã nguồn mở, dựa trên web và không cần máy khách hỗ trợ các giao thức chuẩn như VNC, RDP và SSH. Nó cho phép bạn truy cập PC Linux và Windows từ trình duyệt web thông qua RDP, SSH hoặc VNC. Nó không cần máy khách nên bạn không cần cài đặt bất kỳ plugin hoặc phần mềm máy khách nào. Nó được tạo thành từ hai thành phần Guacamole Server và Guacamole Client. Máy chủ Guacamole cung cấp các thành phần gốc và phía máy chủ cần thiết để kết nối với PC từ xa trong khi máy khách Guacamole là ứng dụng web HTML 5 được sử dụng để kết nối với PC từ xa.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt máy chủ Guacamole trên CentOS 8.

Điều kiện tiên quyết​

  • Một máy chủ chạy CentOS 8.
  • Một mật khẩu gốc được cấu hình cho máy chủ.

Bắt đầu​

Trước tiên, bạn sẽ cần cài đặt một số gói bắt buộc trong máy chủ của mình. Bạn có thể cài đặt tất cả chúng bằng lệnh sau:
Mã:
dnf install -y unzip curl make cmake wget gcc zlib-devel compat-openssl10
Sau khi cài đặt tất cả các gói cần thiết, bạn sẽ cần kích hoạt kho EPEL, PowerTools và Devel trong hệ thống của mình. Bạn có thể bật chúng bằng lệnh sau:
Mã:
dnf install epel-release -y
dnf config-manager --set-enabled PowerTools
dnf config-manager --enable Devel
Tiếp theo, cài đặt các công cụ cần thiết khác bằng lệnh sau:
Mã:
dnf install cairo-devel libuv-devel libjpeg-turbo-devel libjpeg-devel libpng-devel libtool uuid-devel freerdp-devel pango-devel libvncserver-devel pulseaudio-libs-devel openssl-devel libvorbis-devel libwebp-devel libssh2-devel libtheora opus lame-libs
Tiếp theo, tắt kho lưu trữ Devel bằng lệnh sau:
Mã:
dnf config-manager --disable Devel
Tiếp theo, bạn sẽ cần biên dịch thư viện telnet trong hệ thống của bạn.

Đầu tiên, hãy tải xuống bằng lệnh sau:
Mã:
curl -s https://api.github.com/repos/seanmiddleditch/libtelnet/releases/latest | grep browser_download_url | cut -d '"' -f 4 | wget -qi -
Sau khi tải xuống, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xf libtelnet-*.tar.gz
Tiếp theo, hãy thay đổi thư mục thành thư mục đã giải nén và định cấu hình bằng lệnh sau:
Mã:
cd libtelnet-*/
./configure
Tiếp theo, hãy cài đặt vào hệ thống của bạn bằng lệnh sau:
Mã:
make 
make install
Sau khi cài đặt, bạn có thể tiến hành bước tiếp theo.

Cài đặt Java​

Guacamole là phần mềm dựa trên Java nên Java phải được cài đặt trên máy chủ của bạn. Nếu chưa cài đặt, bạn có thể cài đặt bằng lệnh sau:
Mã:
dnf install java-11-openjdk-devel
Sau khi cài đặt, hãy xác minh phiên bản Java bằng lệnh sau lệnh:
Mã:
java -version
Bạn sẽ nhận được kết quả sau:
Mã:
openjdk version "11.0.9.1" 2020-11-04Môi trường chạy thời gian thực OpenJDK (bản dựng 11.0.9.1+1-Ubuntu-0ubuntu1.20.04)Máy ảo máy chủ OpenJDK 64-Bit (bản dựng 11.0.9.1+1-Ubuntu-0ubuntu1.20.04, chế độ hỗn hợp, chia sẻ)

Cài đặt Tomcat​

Apache Tomcat được sử dụng để phục vụ nội dung máy khách guacamole. Vì vậy, bạn sẽ cần cài đặt Tomcat trên máy chủ của mình.

Đầu tiên, hãy tạo một người dùng và nhóm riêng cho Tomcat bằng lệnh sau:
Mã:
groupadd --system tomcat
useradd -d /usr/share/tomcat -r -s /bin/false -g tomcat tomcat
Tiếp theo, hãy tải xuống phiên bản Tomcat mới nhất bằng lệnh sau:
Mã:
wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.43/bin/apache-tomcat-9.0.43.tar.gz
Sau khi quá trình tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xvf apache-tomcat-9.0.43.tar.gz
Tiếp theo, hãy di chuyển Tomcat đến thư mục /usr/share
Mã:
mv apache-tomcat-9.0.43 /usr/share/tomcat
Tiếp theo, thiết lập quyền sở hữu thích hợp cho thư mục Tomcat:
Mã:
chown -R tomcat:tomcat /usr/share/tomcat/
Sau khi hoàn tất, bạn có thể tiến hành bước tiếp theo.

Tạo tệp dịch vụ Systemd cho Tomcat​

Tiếp theo, bạn sẽ cần tạo tệp dịch vụ systemd cho Tomcat. Bạn có thể tạo tệp này bằng lệnh sau:
Mã:
nano /etc/systemd/system/tomcat.service
Thêm các dòng sau:
Mã:
[Unit]Mô tả=Máy chủ TomcatAfter=syslog.target network.target[Service]Loại=forkingNgười dùng=tomcatNhóm=tomcatMôi trường=JAVA_HOME=/usr/lib/jvm/jreMôi trường='JAVA_OPTS=-Djava.awt.headless=true'Môi trường=CATALINA_HOME=/usr/share/tomcatMôi trường=CATALINA_BASE=/usr/share/tomcatMôi trường=CATALINA_PID=/usr/share/tomcat/temp/tomcat.pidMôi trường='CATALINA_OPTS=-Xms512M -Xmx1024M'ExecStart=/usr/share/tomcat/bin/catalina.sh startExecStop=/usr/share/tomcat/bin/catalina.sh dừng[Cài đặt]WantedBy=multi-user.target
Lưu và đóng tệp, sau đó tải lại daemon systemd bằng lệnh sau:
Mã:
systemctl daemon-reload
Tiếp theo, khởi động dịch vụ Tomcat và cho phép nó khởi động khi khởi động lại hệ thống:
Mã:
systemctl start tomcat
systemctl enable tomcat
Bạn cũng có thể kiểm tra trạng thái Tomcat bằng lệnh sau:
Mã:
systemctl status tomcat
Bạn sẽ nhận được kết quả sau:
Mã:
? tomcat.service - Tomcat Server Đã tải: đã tải (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Tue 2021-02-16 09:34:45 EST; 6 giây trước Tiến trình: 26546 ExecStart=/usr/share/tomcat/bin/catalina.sh start (code=exited, status=0/SUCCESS) PID chính: 26551 (java) Nhiệm vụ: 35 (giới hạn: 12523) Bộ nhớ: 89,7M CGroup: /system.slice/tomcat.service ??26551 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/usr/share/tomcat/conf/logging.properties -Djava.util.logging.man>16/02 09:34:45 centos8 systemd[1]: Đang khởi động Tomcat Server...16/02 09:34:45 centos8 systemd[1]: Đang khởi động Tomcat Server.

Cài đặt Apache Guacamole​

Trước tiên, hãy tải xuống phiên bản Guacamole mới nhất bằng lệnh sau:
Mã:
wget https://downloads.apache.org/guacamole/1.3.0/source/guacamole-server-1.3.0.tar.gz
Sau khi tải xuống hoàn tất, hãy giải nén tệp đã tải xuống bằng lệnh sau:
Mã:
tar -xvzf guacamole-server-1.3.0.tar.gz
Tiếp theo, hãy thay đổi thư mục thành thư mục đã giải nén và định cấu hình bằng lệnh sau:
Mã:
cd guacamole-server-1.3.0
./configure --with-init-dir=/etc/init.d
Tiếp theo, cài đặt nó vào hệ thống của bạn bằng lệnh sau:
Mã:
make
make install
ldconfig
Tiếp theo, tải lại daemon systemd bằng lệnh sau:
Mã:
systemctl daemon-reload
Tiếp theo, khởi động dịch vụ Guacamole và cho phép nó khởi động khi khởi động lại hệ thống:
Mã:
systemctl start guacd
systemctl enable guacd
Bạn có thể kiểm tra trạng thái của Guacamole bằng lệnh sau:
Mã:
systemctl status guacd
Bạn sẽ nhận được kết quả đầu ra sau:
Mã:
? guacd.service - LSB: Guacamole proxy daemon Đã tải: đã tải (/etc/rc.d/init.d/guacd; đã tạo) Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Ba 2021-02-16 09:37:15 EST; 4 giây trước Tài liệu: man:systemd-sysv-generator(8) Quy trình: 35723 ExecStart=/etc/rc.d/init.d/guacd start (code=exited, status=0/SUCCESS) Nhiệm vụ: 1 (giới hạn: 12523) Bộ nhớ: 12,1M CGroup: /system.slice/guacd.service ??35726 /usr/local/sbin/guacd -p /var/run/guacd.pid16/02 09:37:15 centos8 systemd[1]: Đang khởi động LSB: Guacamole proxy daemon...16/02 09:37:15 centos8 guacd[35723]: Đang khởi động guacd: guacd[35724]: THÔNG TIN: Guacamole proxy daemon (guacd) phiên bản 1.3.0 đã khởi động16/02 09:37:15 centos8 guacd[35723]: THÀNH CÔNG16/02 09:37:15 centos8 guacd[35726]: Đang lắng nghe trên máy chủ 127.0.0.1, cổng 482216/02 09:37:15 centos8 systemd[1]: Đã khởi động LSB: Guacamole proxy daemon.

Cài đặt Guacamole Client​

Tiếp theo, tạo một thư mục cho Guacamole và tải xuống tệp Guacamole client bằng lệnh sau:
Mã:
mkdir /etc/guacamole
wget https://downloads.apache.org/guacamole/1.3.0/binary/guacamole-1.3.0.war
Sau khi tải xuống, hãy di chuyển tệp đã tải xuống vào thư mục /etc/guacamole:
Mã:
mv guacamole-1.3.0.war /etc/guacamole/guacamole.war
Tiếp theo, tạo liên kết tượng trưng của tệp guacamole.war tới thư mục /usr/share/tomcat:
Mã:
ln -s /etc/guacamole/guacamole.war /usr/share/tomcat/webapps/
Tiếp theo, đặt thư mục gốc của Guacamole bằng lệnh sau:
Mã:
echo "GUACAMOLE_HOME=/etc/guacamole" | tee -a /etc/default/tomcat
Tiếp theo, tạo tệp cấu hình Guacamole bằng lệnh sau:
Mã:
nano /etc/guacamole/guacamole.properties
Thêm các dòng sau:
Mã:
guacd-hostname: localhostguacd-port: 4822user-mapping: /etc/guacamole/user-mapping.xmlauth-provider: net.sourceforge.guacamole.net.basic.BasicFileAuthenticationProvider
Lưu và đóng tệp sau đó tạo liên kết tượng trưng của thư mục /etc/guacamole:
Mã:
ln -s /etc/guacamole /usr/share/tomcat/.guacamole

Cấu hình Guacamole​

Tiếp theo, bạn sẽ cần tạo tệp ánh xạ người dùng Guacamole để xác định máy chủ từ xa mà bạn muốn kết nối từ Guacamole.

Đầu tiên, tạo mật khẩu bí mật bằng lệnh sau:
Mã:
echo -n your-password | openssl md5
Bạn sẽ thấy đầu ra sau:
Mã:
(stdin)= 0f6e4a1df0cf5ee97c2066953bed21b2
Tiếp theo, tạo tệp user-mapping.xml bằng lệnh sau:
Mã:
nano /etc/guacamole/user-mapping.xml
Thêm thông tin chi tiết về máy chủ Windows và Linux từ xa của bạn như được hiển thị bên dưới:
Mã:
 
Back
Bên trên