67 Nguyễn Thị Định, Phường An Hải, TP. Đà Nẵng
Hướng dẫn

Hướng dẫn cài đặt Guacamole Remote Desktop Client trên Ubuntu 20.04 LTS

Hướng dẫn cài đặt Guacamole Remote Desktop Client trên Ubuntu 20.04 LTS
Chia sẻ

Guacamole là một Control Panel dựa trên nền web hoàn toàn miễn phí và mã nguồn mở sử dụng cho việc quản lí các hệ thống Linux và Windows từ trình duyệt Web. Nó hỗ trợ các giao thức cơ bản như VNC, RDP, SSH và Kubernetes cũng như hỗ...

Mục lục [Ẩn]

Yêu cầu
Hướng dẫn cài đặt
Cài đặt Guacamole Client
Cấu hình Guacamole
Sử dụng Guacamole trên nền web
Cấu hình Nginx cho Guacamole

Yêu cầu
  • Một máy chủ đang chạy Ubuntu 20.04 với ít nhất 2GB RAM
  • Quyền truy cập vào User root
Hướng dẫn cài đặt

Bước 1: Cập nhật hệ thống lên phiên bản mới nhất sử dụng câu lệnh

apt-get update -y

Bước 2: Cài đặt một số các phần mềm yêu cầu của phần mềm

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

Bước 3: Cài đặt Tomcat Server dùng câu lệnh

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

Bước 4: Sau cài xong, chúng ta kích hoạt Tomcat khởi động cùng hệ thống bằng câu lệnh

systemctl start tomcat9 systemctl enable tomcat9

Bước 5: Tiến hành tải về Guacamole bằng câu lệnh

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

Xả nén ra bằng câu lệnh

tar -xvzf guacamole-server-1.1.0.tar.gz

Tiến hành kiểm tra trước khi biên dịch

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

Nếu bạn thấy output xuất ra như dưới đây là đã thành công rồi đó

freerdp2 ............ yes pango ............... yes libavcodec .......... yes libavutil ........... yes libssh2 ............. yes libssl .............. yes libswscale .......... yes libtelnet ........... yes libVNCServer ........ yes libvorbis ........... yes libpulse ............ no libwebsockets ....... no libwebp ............. yes wsock32 ............. no Protocol support: Kubernetes .... no RDP ........... yes SSH ........... yes Telnet ........ yes VNC ........... yes Services / tools: guacd ...... yes guacenc .... yes guaclog .... yes FreeRDP plugins: /usr/lib/x86_64-linux-gnu/freerdp2 Init scripts: /etc/init.d Systemd units: no Type "make" to compile guacamole-server.

Bước 6: Tiến hành biên dịch

make make install

Bước 7: Cập nhật system cache

ldconfig

Bước 8: Khởi động và kích hoạt Guacamole Services

systemctl enable guacd systemctl start guacd
Cài đặt Guacamole Client

Bước 1: Tải về Guacamole binary sử dụng câu lệnh

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

Sau khi Download xong, copy chúng vào thư mục /etc/guacamole

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

Tạo một symbolic link tới thư mục Tomcat Webapps

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

Khởi động lại Tomcat và Guacamole Services

systemctl restart tomcat9 systemctl restart guacd
Cấu hình Guacamole

Tạo một file cấu hình của Guacamole

nano /etc/guacamole/guacamole.properties

Thêm các dòng sau vào và lưu lại

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

Tạo thư mục cho library và extension

mkdir /etc/guacamole/{extensions,lib}

Thiết đặt biến môi trường và thêm vào file cấu hình của tomcat

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

Giờ chúng ta sẽ tạo file user-mapping.xml để định nghĩa các user cho phép đăng nhập vào giao diện web của Guacamole
Chúng ta sẽ tạo mã md5 cho mật khẩu của bạn

echo -n mật khẩu của bạn | openssl md5

Bạn sẽ thấy output như thế này, hãy ghi nhớ đoạn hash được tạo ra

(stdin)= 55b38b03e7587a45fd886977842ff9b8

Giờ chúng ta sẽ tạo file user-mapping.xml sử dụng câu lệnh

nano /etc/guacamole/user-mapping.xml

Nội dung File như sau

ssh192.168.10.50 22 root rdp192.168.10.51 3389 

Trong đây

  • 55b38b03e7587a45fd886977842ff9b8: Là mã MD5 vừa tạo ở bước trên
  • 192.168.10.50: Là địa chỉ của máy chủ remote Linux
  • 192.168.10.51: Là địa chỉ của máy chủ remote Windows

Sau đó khởi động lại service của Guacamole và Tomcat bằng các câu lệnh

systemctl restart tomcat9 systemctl restart guacd
Sử dụng Guacamole trên nền web

Tiến hành truy cập vào Guacamole bằng địa chỉ http://IP của bạn:8080/guacamole
Sau đó đăng nhập bằng tài khoản bạn đã chỉ ra trong file user-mapping.xml


Ở đây bạn sẽ thấy 2 server chúng ta vừa thêm ở trên


Ví dụ khi kết nối vào Server Ubuntu, bạn sẽ thấy thông báo nhập password. Sau khi nhập Password bạn sẽ truy cập được vào Server

Cấu hình Nginx cho Guacamole

Chúng ta nên cấu hình Nginx làm reverse Proxy để truy cập Guacamole qua Port 80
Cài đặt Nginx sử dụng câu lệnh sau

apt-get install nginx -y

Tạo một file cấu hình Nginx mới cho Guacamole

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

Thêm các dòng sau vào

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/ /; } }

Kích hoạt Nginx Virutal Host

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

Khởi động lại Nginx

systemctl restart nginx

Giờ bạn có thể truy cập vào Guacamole bằng IP của bạn không cần thêm 8080/guacamole nữa

Chia sẻ

Bài viết liên quan

Tối ưu chi phí hạ tầng: chọn đúng cấu hình, thuê theo nhu cầu

Tối ưu chi phí hạ tầng: chọn đúng cấu hình, thuê theo nhu cầu

Cách giảm chi phí hạ tầng hợp lý: chọn đúng cấu hình (right-sizing), thuê theo nhu cầu, kết hợp dịch vụ và rà soát tài nguyên định kỳ mà không ảnh hưởng vận hành

Cách săn khuyến mãi VPS/máy chủ, tránh bẫy giá rẻ

Cách săn khuyến mãi VPS/máy chủ, tránh bẫy giá rẻ

Cách tận dụng khuyến mãi VPS và máy chủ hợp lý, đọc kỹ điều kiện gia hạn và nhận biết bẫy giá rẻ ảnh hưởng chất lượng dịch vụ

Chọn nhà cung cấp VPS/máy chủ: tiêu chí cần kiểm tra

Chọn nhà cung cấp VPS/máy chủ: tiêu chí cần kiểm tra

Các tiêu chí chọn nhà cung cấp VPS và máy chủ: uptime/SLA, hạ tầng data center, peering, hỗ trợ kỹ thuật và chính sách hoàn tiền, kèm cách đọc cam kết dịch vụ

Phần mềm mã nguồn mở thay thế để tiết kiệm bản quyền

Phần mềm mã nguồn mở thay thế để tiết kiệm bản quyền

Gợi ý các phần mềm mã nguồn mở thay thế giải pháp có phí cho máy chủ: hệ điều hành, cơ sở dữ liệu, web server, control panel và ảo hóa, kèm lưu ý chi phí vận hành

So sánh bản quyền control panel: cPanel, DirectAdmin, Plesk

So sánh bản quyền control panel: cPanel, DirectAdmin, Plesk

So sánh cPanel, DirectAdmin và Plesk về tính năng, hệ điều hành hỗ trợ và chi phí bản quyền, kèm gợi ý chọn control panel theo số website và nhu cầu

Các loại bản quyền Windows Server và cách chọn cho đúng

Các loại bản quyền Windows Server và cách chọn cho đúng

Hiểu cấp phép Windows Server theo core, CAL và các kênh OEM/Volume/CSP, phân biệt Standard và Datacenter để chọn bản quyền phù hợp và hợp lệ