Remote Desktop Access With RealVNC on Linux Debian 9
Mục lục:
- Điều kiện tiên quyết
- Cài đặt môi trường máy tính để bàn
- Cài đặt máy chủ VNC
- Cấu hình máy chủ VNC
- Tạo tệp đơn vị Systemd
- Kết nối với máy chủ VNC
- Thiết lập đường hầm SSH trên Linux và macOS
- Thiết lập đường hầm SSH trên Windows
- Phần kết luận
Hướng dẫn này mô tả cách cài đặt và định cấu hình máy chủ VNC trên hệ thống Debian 9. Chúng tôi cũng sẽ chỉ cho bạn cách tạo đường hầm SSH và kết nối an toàn với máy chủ VNC.
Máy tính mạng ảo (VNC) là một hệ thống chia sẻ máy tính để bàn đồ họa cho phép bạn sử dụng bàn phím và chuột để điều khiển từ xa một máy tính khác.
Điều kiện tiên quyết
Trước khi tiếp tục với hướng dẫn, hãy đảm bảo bạn đã đăng nhập với tư cách là người dùng có quyền sudo.
Cài đặt môi trường máy tính để bàn
Rất có thể máy chủ Debian của bạn sẽ không cài đặt môi trường máy tính để bàn. Bước đầu tiên của chúng tôi là cài đặt một môi trường máy tính để bàn nhẹ.
Có một số môi trường máy tính để bàn (DE) có sẵn trong kho Debian. Trong hướng dẫn này, chúng tôi sẽ sử dụng Xfce làm môi trường lựa chọn cho máy tính để bàn của chúng tôi. Nó là một nhanh, ổn định và nhẹ, làm cho nó lý tưởng để sử dụng trên một máy chủ từ xa.
Cập nhật chỉ mục gói và cài đặt Xfce trên máy chủ Debian của bạn bằng các lệnh sau:
sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
Tùy thuộc vào hệ thống của bạn, việc tải xuống và cài đặt các gói Xfce có thể mất một chút thời gian.
Cài đặt máy chủ VNC
Ngoài ra còn có một số máy chủ VNC khác nhau có sẵn trong kho lưu trữ Debian như TightVNC, TigerVNC và x11vnc. Mỗi máy chủ VNC đều có điểm mạnh và điểm yếu về tốc độ và bảo mật.
Chúng tôi sẽ sử dụng TigerVNC, được duy trì tích cực máy chủ VNC hiệu suất cao. Để cài đặt TigerVNC trên máy chủ Debian của bạn, hãy thực hiện lệnh sau:
sudo apt install tigervnc-standalone-server tigervnc-common
Sau khi máy chủ VNC được cài đặt, hãy chạy lệnh
vncserver
để tạo cấu hình ban đầu và thiết lập mật khẩu. Không sử dụng sudo khi chạy lệnh sau:
vncserver
Bạn sẽ được nhắc nhập và xác nhận mật khẩu và có nên đặt mật khẩu làm mật khẩu chỉ xem. Nếu bạn chọn thiết lập mật khẩu chỉ xem, người dùng sẽ không thể tương tác với phiên bản VNC bằng chuột và bàn phím.
You will require a password to access your desktops. Password: Verify: Would you like to enter a view-only password (y/n)? n /usr/bin/xauth: file /home/linuxize/.Xauthority does not exist New 'debian9.localdomain:1 (linuxize)' desktop at:1 on machine debian9.localdomain Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/debian9.localdomain:1.log Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd:1 to connect to the VNC server.
Khi bạn chạy lệnh
vncserver
lần đầu tiên, nó sẽ tạo và lưu trữ tệp mật khẩu trong thư mục
~/.vnc
.
Lưu ý
:1
sau tên máy chủ trong đầu ra ở trên. Điều này cho biết số cổng hiển thị mà máy chủ vnc đang chạy. Trong trường hợp của chúng tôi, máy chủ đang chạy trên cổng TCP
5901
(5900 + 1). Nếu bạn tạo một phiên bản thứ hai với
vncserver
nó sẽ chạy trên cổng miễn phí tiếp theo, nghĩa là
:2
có nghĩa là máy chủ đang chạy trên cổng
5902
(5900 + 2).
Điều quan trọng cần lưu ý là khi làm việc với các máy chủ VNC,
:X
là cổng hiển thị đề cập đến
5900+X
Trước khi tiếp tục bước tiếp theo, hãy dừng phiên bản VNC bằng lệnh
vncserver
với tùy chọn
-kill
và số máy chủ làm đối số. Trong trường hợp của chúng tôi, máy chủ đang chạy ở cổng 5901 (
:1
), vì vậy chúng tôi sẽ dừng nó với:
vncserver -kill:1
Killing Xtigervnc process ID 6677… success!
Cấu hình máy chủ VNC
Bây giờ cả Xfce và TigerVNC đã được cài đặt trên máy chủ, chúng ta cần cấu hình TigerVNC để sử dụng Xfce. Để làm như vậy, tạo tập tin sau:
nano ~/.vnc/xstartup
~ /.vnc / xstartup
#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4
Sau khi hoàn thành, lưu và đóng tệp. Kịch bản trên sẽ được thực thi tự động bất cứ khi nào bạn khởi động hoặc khởi động lại máy chủ TigerVNC.
Tệp
~/.vnc/xstartup
cũng cần có quyền thực thi. Chạy
chmod
sau để đảm bảo quyền là chính xác:
chmod u+x ~/.vnc/xstartup
~ /.vnc / cấu hình
Tạo tệp đơn vị Systemd
Tệp đơn vị systemd sẽ cho phép chúng tôi dễ dàng khởi động, dừng và khởi động lại dịch vụ VNC khi cần.
Mở trình soạn thảo văn bản của bạn và sao chép và dán cấu hình sau vào nó. Đừng quên thay đổi tên người dùng trong dòng 7 để khớp với tên người dùng của bạn.
sudo nano /etc/systemd/system/[email protected]
/etc/systemd/system/[email protected]
Description=Remote desktop service (VNC) After=syslog.target network.target Type=simple User=linuxize PAMName=login PIDFile=/home/%u/.vnc/%H%i.pid ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill:%i > /dev/null 2>&1 ||:' ExecStart=/usr/bin/vncserver:%i -geometry 1440x900 -alwaysshared -fg ExecStop=/usr/bin/vncserver -kill:%i WantedBy=multi-user.target
Lưu và đóng tập tin.
Thông báo cho systemd rằng tệp
[email protected]
tồn tại bằng cách chạy lệnh sau:
sudo systemctl daemon-reload
Tiếp theo, kích hoạt dịch vụ:
sudo systemctl enable [email protected]
Số
1
sau dấu
@
xác định cổng hiển thị mà dịch vụ VNC sẽ chạy. Như chúng ta đã thảo luận trong phần trước vì chúng ta đang sử dụng
1
, máy chủ VNC sẽ lắng nghe trên cổng
5901
.
Bắt đầu dịch vụ VNC bằng cách thực hiện:
sudo systemctl start [email protected]
Xác minh rằng dịch vụ được bắt đầu thành công với:
sudo systemctl status [email protected]
● [email protected] - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/[email protected]; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-10-03 05:23:33 PDT; 51s ago Process: 7063 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 7071 (vncserver) Tasks: 0 (limit: 4915) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 7071 /usr/bin/perl /usr/bin/vncserver:1 -geometry 1440x900 -alwaysshared -fg
Kết nối với máy chủ VNC
VNC không phải là một giao thức được mã hóa và có thể bị đánh hơi gói. Cách tiếp cận được đề xuất là tạo một đường hầm SSH sẽ chuyển tiếp lưu lượng truy cập từ máy cục bộ của bạn trên cổng 5901 đến máy chủ trên cùng một cổng một cách an toàn.
Thiết lập đường hầm SSH trên Linux và macOS
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
Bạn sẽ được nhắc nhập mật khẩu người dùng.
Đừng quên thay thế
username
và
server_ip_address
bằng tên người dùng và địa chỉ IP của máy chủ của bạn.
Thiết lập đường hầm SSH trên Windows
Mở Putty và nhập Địa chỉ IP máy chủ của bạn vào trường
Host name or IP address
.
Tại thời điểm này, bạn đã kết nối thành công với máy chủ của mình thông qua VNC. Bây giờ bạn có thể bắt đầu tương tác với máy tính để bàn XFCE từ xa từ máy cục bộ bằng bàn phím và chuột.
Phần kết luận
Lúc này, bạn nên có một máy chủ VNC hoạt động và bạn có thể dễ dàng quản lý máy chủ Debian 9 của mình từ máy tính cục bộ bằng giao diện đồ họa.
Để định cấu hình máy chủ VNC của bạn để bắt đầu hiển thị cho nhiều người dùng, hãy tạo cấu hình ban đầu và thiết lập mật khẩu bằng lệnh
vncserver
. Bạn cũng sẽ cần tạo một tệp dịch vụ mới bằng một cổng khác.
Hãy để lại nhận xét nếu bạn có bất kỳ câu hỏi nào.
debian vncKhông thể cài đặt hoặc gỡ cài đặt chương trình trong Trình gỡ rối cài đặt và gỡ cài đặt chương trình Windows 10/8/7
Của Microsoft sẽ giúp bạn khắc phục sự cố nếu bạn không thể cài đặt hoặc gỡ cài đặt chương trình trong Windows 7/8/10.
Cách cài đặt và cấu hình vnc trên centos 7
Trong hướng dẫn này, chúng tôi sẽ hướng dẫn bạn các bước để cài đặt và định cấu hình máy chủ VNC trên hệ thống CentOS 7. Chúng tôi cũng sẽ chỉ cho bạn cách kết nối an toàn với máy chủ VNC thông qua đường hầm SSH.
Cách cài đặt và cấu hình vnc trên Ubuntu 18.04
Hướng dẫn này bao gồm các bước cần thiết để cài đặt và định cấu hình máy chủ VNC trên hệ thống Ubuntu 18.04. Chúng tôi cũng sẽ chỉ cho bạn cách kết nối an toàn với máy chủ VNC thông qua đường hầm SSH.