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ỗ trợ về clipboard, truyền file qua SFTP và cho phép chúng ta quản lí nhiều phiên remote Desktop cùng một lúc
Hôm nay mình sẽ hướng dẫn các bạn cài đặt Guacamole Remote Desktop Client trên Ubuntu 20.04 LTS
Mục lục
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
<user-mapping> <authorize username="admin" password="55b38b03e7587a45fd886977842ff9b8" encoding="md5"> <connection name="Ubuntu20.04-Server"> <protocol>ssh</protocol> <param name="hostname">192.168.10.50</param> <param name="port">22</param> <param name="username">root</param> </connection> <connection name="Windows Server"> <protocol>rdp</protocol> <param name="hostname">192.168.10.51</param> <param name="port">3389</param> </connection> </authorize> </user-mapping>
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
Blog VPS GPU
Giá thuê VPS GPU treo game 2023: Hướng dẫn thuê và cài đặt chi tiết
Bạn là một game thủ đam mê, luôn tìm kiếm trải nghiệm chơi game tối [...]
Blog Cloud VPS VPS GPU
Vì sao nên thuê VPS GPU tại Cloudzone
Trong vô số những nhà cung cấp dịch vụ thuê VPS GPU trên thị trường, [...]
Blog Cloud VPS VPS GPU
Giải đáp những thắc mắc về dịch vụ thuê VPS có GPU
Bạn đang tìm kiếm một giải pháp VPS mạnh mẽ và hiệu suất cao để [...]
Blog Cloud VPS
Bảng giá thuê VPS GPU mới nhất năm 2023
Trong thế giới công nghệ ngày nay, VPS (Virtual Private Server) có GPU đóng vai [...]
Cloud VPS Blog
VPS GPU: Đỉnh cao hiệu suất với lợi ích & ứng dụng vượt trội
Trong thế giới công nghệ đầy cạnh tranh hiện nay, việc nâng cao hiệu suất [...]
Cloud VPS
VPS có GPU và sức mạnh xử lý đồ họa, phân tích dữ liệu của nó
VPS có GPU là lựa chọn tuyệt vời cho việc xử lý đồ họa cao [...]