Điều khiển máy tính từ xa. Đang thiết lập UltraVnc. Máy chủ VNC hoặc Máy tính từ xa trên Ubuntu

VNC ( Mạng ảo Máy tính là một hệ thống truy cập từ xa cho phép bạn sử dụng bàn phím và chuột để tương tác với Giao diện đồ họa máy tính để bàn máy chủ từ xa. Với sự trợ giúp của nó, bạn có thể quản lý các tệp, phần mềm và cài đặt của máy chủ từ xa mà không cần truy cập dòng lệnh.

Hướng dẫn này sẽ giúp bạn cài đặt VNC trên máy chủ riêng ảo Ubuntu 16.04 và thiết lập kết nối an toàn bằng đường hầm SSH. Máy chủ VNC sẽ sử dụng TightVNC, gói điều khiển từ xa nhanh và nhẹ, hỗ trợ hoạt động ngay cả khi internet chậm.

Yêu cầu

  • Máy chủ Ubuntu 18.04 được định cấu hình với .
  • Một máy tính cục bộ có máy khách VNC được cài đặt sẵn hỗ trợ kết nối VNC qua đường hầm SSH. Người dùng Windows có thể cài đặt TightVNC, RealVNC hoặc UltraVNC. Người dùng Mac OS X có thể sử dụng gói Chia sẻ màn hình tích hợp sẵn hoặc sử dụng các ứng dụng đa nền tảng (ví dụ: RealVNC). Người dùng Linux có thể chọn vinagre, krdc, RealVNC, TightVNC, v.v.

1: Cài đặt Môi trường máy tính để bàn và Máy chủ VNC

Theo mặc định, máy chủ Ubuntu 18.04 không được cài đặt sẵn môi trường đồ họa máy tính để bàn và máy chủ VNC. Vì vậy, trước tiên bạn cần phải cài đặt các thành phần này. TRONG hướng dẫn này Các gói Xfce và TightVNC được sử dụng, có sẵn trong kho chính thức của Ubuntu.

Để cài đặt các gói được chỉ định trên máy chủ, hãy cập nhật chỉ mục và nhập lệnh:

cập nhật sudo apt
sudo apt cài đặt xfce4 xfce4-goodies

Bây giờ hãy cài đặt TightVNC:

sudo apt cài đặt chặt chẽvncserver

Hoàn thành thiết lập ban đầu Máy chủ VNC sau khi cài đặt và chọn mật khẩu mạnh, hãy sử dụng lệnh vncserver.

Lệnh sẽ nhắc bạn chọn và xác nhận mật khẩu:

Bạn sẽ cần mật khẩu để truy cập vào máy tính để bàn của bạn.
Mật khẩu:
Xác minh:

Mật khẩu phải dài từ sáu đến tám ký tự. Mật khẩu dài hơn sẽ được tự động rút ngắn xuống còn 8 ký tự.

Sau khi xác nhận mật khẩu của mình, bạn sẽ có tùy chọn tạo mật khẩu chỉ xem. Người dùng truy cập VNC bằng mật khẩu duyệt web sẽ không thể điều khiển VNC qua chuột hoặc bàn phím. Mật khẩu này cho phép bạn chứng minh VNC cho người dùng khác nếu cần.

Quá trình sau đó sẽ hoàn tất thiết lập VNC ban đầu và tạo các tệp cấu hình.

Bạn có muốn nhập mật khẩu chỉ xem (y/n) không? N
xauth: tệp /home/8host/.Xauthority không tồn tại
Máy tính để bàn "X" mới là your_hostname:1
Tạo tập lệnh khởi động mặc định /home/8host/.vnc/xstartup

2: Thiết lập máy chủ VNC

Đầu tiên bạn cần xác định các lệnh mà VNC server sẽ thực thi khi khởi động. Các lệnh này phải có trong tệp xstartup trong thư mục .vnc, được lưu trữ trong thư mục chính của bạn người dùng hiện tại. Tập lệnh khởi động được tạo bởi nhóm vncserver nhưng nó cần được sửa đổi để hoạt động với Xfce.

Khi VNC khởi động lần đầu, nó sử dụng cổng 5901. VNC gọi cổng này:1. VNC có thể chạy các phiên bản khác trên các cổng khác, sẽ được gọi là :2, :3, v.v.

Để thay đổi cài đặt máy chủ VNC, bạn cần dừng phiên bản bằng cổng 5901.

vncserver -kill:1

Lệnh sẽ trả về thông báo sau (PID sẽ khác):

Giết tiến trình Xtightvnc ID 17648

Tạo bản sao lưu của tệp xstartup:

mv ~/.vnc/xstartup ~/.vnc/xstartup.bak

Sau đó tạo tập tin mới xstartup:

nano ~/.vnc/xstartup

Dán vào nó lệnh sau, sẽ được thực thi tự động khi máy chủ VNC khởi động. Lưu và đóng tập tin.

~/.vnc/xstartup
#!/bin/bash
xrdb $HOME/.Xresource
bắt đầuxfce4&

Với lệnh đầu tiên, xrdb $HOME/.Xresources, GUI máy chủ VNC sẽ đọc tệp .Xresources. Trong tệp .Xresources, người dùng có thể thay đổi một số cài đặt của màn hình đồ họa (tùy chỉnh màu của thiết bị đầu cuối, chủ đề con trỏ, phông chữ). Lệnh thứ hai chỉ cần khởi chạy Xfce, nơi lưu trữ tất cả phần mềm đồ họa cần thiết để quản lý máy chủ.

Bây giờ bạn cần làm cho tập tin có thể thực thi được:

sudo chmod +x ~/.vnc/xstartup

Khởi động lại VNC:

Trong quá trình khởi động, máy chủ sẽ trả về:

Máy tính để bàn "X" mới là your_hostname:1
Đang khởi động các ứng dụng được chỉ định trong /home/8host/.vnc/xstartup
Tệp nhật ký là /home/8host/.vnc/your_hostname:1.log

3: Kết nối an toàn với VNC

VNC không sử dụng giao thức bảo mật khi kết nối. Tạo một đường hầm SSH cho kết nối an toànđến máy chủ và sau đó định cấu hình máy khách VNC để hỗ trợ đường hầm kết nối trực tiếp.

Tạo kết nối SSH trên máy tính cục bộ của bạn, kết nối này sẽ chuyển đến kết nối localhost cho VNC. Bạn có thể thực hiện việc này trên Linux hoặc macOS thông qua thiết bị đầu cuối bằng lệnh sau:

Cờ -L chỉ định các ràng buộc cổng. Trong trường hợp này, chúng tôi liên kết cổng 5901 của kết nối từ xa với cổng 5901 trên máy tính cục bộ. Cờ -C cho phép nén và -N cho ssh biết phải làm gì lệnh từ xa không cần. Tùy chọn -l chỉ định tên đăng nhập từ xa.

Đừng quên thay thế 8host và your_server_ip bằng dữ liệu của bạn.

Nếu bạn đang chạy qua máy khách SSH đồ họa như PuTTY, hãy sử dụng your_server_ip làm kết nối IP trong cài đặt đường hầm SSH của bạn và đặt localhost:5901 làm cổng mới.

Khi đường hầm được thiết lập và chạy, hãy sử dụng ứng dụng khách VNC của bạn để kết nối với localhost:5901. Điều này sẽ hỏi bạn mật khẩu bạn đã chọn trong phần 1.

Sau đó, bạn sẽ thấy màn hình Xfce tiêu chuẩn.

Bạn có thể truy cập các tập tin trong thư mục chính của mình bằng trình quản lý tập tin hoặc từ dòng lệnh.

Nhấn CTRL + C trong thiết bị đầu cuối để đóng đường hầm SSH và quay lại dấu nhắc lệnh. Điều này cũng sẽ kết thúc phiên VNC của bạn.

4: Tạo tệp dịch vụ VNC

Bây giờ bạn cần định cấu hình máy chủ VNC làm dịch vụ hệ thống.

Tạo một tệp đơn vị mới /etc/systemd/system/ [email được bảo vệ]:

sudo nano /etc/systemd/system/ [email được bảo vệ]

Biểu tượng @ ở cuối tên tệp sẽ cho phép bạn truyền một đối số có thể được sử dụng trong cấu hình dịch vụ. Sử dụng nó, bạn có thể chỉ định cổng VNC sẽ được sử dụng khi quản lý dịch vụ.

Thêm các dòng sau vào tập tin. Đảm bảo thay đổi Người dùng, Nhóm, WorkingDirectory và tên người dùng trong giá trị PIDFILE.

/etc/systemd/system/ [email được bảo vệ]
Mô tả=Khởi động máy chủ TightVNC khi khởi động
Sau=syslog.target network.target
Loại=rẽ nhánh
Người dùng=8máy chủ
Nhóm=8máy chủ
WorkingDirectory=/home/8host
PIDFile=/home/8host/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill:%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -deep 24 -geometry 1280x800:%i
ExecStop=/usr/bin/vncserver -kill:%i
WantedBy=multi-user.target

Lệnh ExecStartPre dừng VNC nếu dịch vụ đang chạy. Lệnh ExecStart khởi động VNC và đặt độ sâu màu thành màu 24 bit với độ phân giải 1280x800. Bạn cũng có thể thay đổi các cài đặt này tùy theo nhu cầu của mình.

Lưu và đóng tập tin.

Sau đó cho hệ thống biết về file đơn vị mới.

sudo systemctl daemon-tải lại

Kích hoạt nó:

kích hoạt sudo systemctl [email được bảo vệ]

Số 1 theo sau @ xác định số hiển thị nào sẽ được hiển thị trong dịch vụ, trong trường hợp này nó là giá trị mặc định.

Dừng phiên bản máy chủ VNC hiện tại nếu nó vẫn đang chạy.

vncserver -kill:1

Bây giờ hãy thử chạy nó như bất kỳ dịch vụ systemd nào khác:

sudo systemctl bắt đầu vncserver@1

Để đảm bảo máy chủ đang chạy, hãy kiểm tra trạng thái của nó:

trạng thái sudo systemctl vncserver@1

[email được bảo vệ]— Khởi động máy chủ TightVNC khi khởi động

Đã tải: đã tải (/etc/systemd/system/ [email được bảo vệ]; gián tiếp; cài đặt trước của nhà cung cấp: đã bật)
Hoạt động: hoạt động (đang chạy) kể từ Thứ Hai ngày 09/07/2018 18:13:53 UTC; 2 phút 14 giây trước
Quy trình: 22322 ExecStart=/usr/bin/vncserver -deep 24 -geometry 1280x800:1 (code=exited, status=0/SUCCESS)
Quá trình: 22316 ExecStartPre=/usr/bin/vncserver -kill:1 > /dev/null 2>&1 (code=exited, status=0/SUCCESS)
PID chính: 22330 (Xtightvnc)
...

Dịch vụ VNC hiện đã được thêm vào để khởi động.

Bắt đầu lại đường hầm SSH:

ssh -L 5901:127.0.0.1:5901 -C -N -l 8host your_server_ip

Tạo kết nối mới từ máy khách VNC tới localhost:5901 để kiểm tra thiết lập.

Phần kết luận

Bây giờ máy chủ VNC đã được cài đặt trên máy chủ Ubuntu 18.04. Với nó, bạn có thể quản lý các tệp, chương trình và cài đặt của máy chủ từ xa (ví dụ: khởi chạy trình duyệt web từ xa).

Thẻ: ,

Làm việc với khách hàng VNC. Tài liệu này hướng đến người dùng thiếu kinh nghiệm.

1. Cài đặt máy khách VNC
2. Kết nối máy khách VNC với máy tính từ xa
3. Ngắt kết nối máy khách VNC khỏi máy tính từ xa
4. Điều chỉnh máy khách VNC
5. Các vấn đề thường gặp

Để làm việc với máy tính từ xa thông qua VNC, bạn cần chạy chương trình máy khách (VNC Viewer, VNC client) trên máy tính của người dùng. Chương trình này truyền dữ liệu về các lần nhấn phím và chuyển động chuột do người dùng thực hiện đến máy tính từ xa và hiển thị thông tin dự định hiển thị trên màn hình.

1. Cài đặt máy khách VNC
Đối với hệ điều hành Windows, bạn có thể tải xuống và cài đặt ứng dụng khách VNC UltraVNC và TightVNC miễn phí.

Mac OS X kể từ phiên bản 10.5 đã hỗ trợ máy khách VNC trong RemoteDesktop. Vì những phiên bản trước Bạn có thể sử dụng các máy khách VNC JollysFastVNC và .

Đối với nhánh Linux của Debian (Ubuntu), máy khách VNC được cài đặt từ kho lưu trữ bằng lệnh:

Apt-get cài đặt vncviewer

Đối với nhánh RedHat (CentOS, Fedora) - bằng lệnh:

Yum cài đặt vnc

Đối với FreeBSD, máy khách VNC (TightVNC) được cài đặt từ các gói bằng lệnh:

Pkg_add -r chặt chẽvnc

2. Kết nối máy khách VNC với máy tính từ xa
Để kết nối máy khách VNC với máy tính từ xa, bạn cần chỉ định địa chỉ IP hoặc tên DNS của nó và số hiển thị (mặc định, :0) hoặc số cổng TCP (mặc định, 5900). Nếu máy chủ VNC yêu cầu ủy quyền thì khi kết nối với nó, máy khách VNC sẽ yêu cầu nhập mật khẩu. Xin lưu ý rằng mật khẩu truy cập máy chủ VNC không được liên kết với bất kỳ tài khoản nào ( tài khoản user) trên một máy tính từ xa và chỉ dùng để hạn chế quyền truy cập vào màn hình máy chủ VNC.

Sau khi thiết lập kết nối và mở màn hình, tùy thuộc vào cài đặt của máy chủ VNC, có thể cần có sự ủy quyền của người dùng để máy chủ ảo hoặc một phiên làm việc đang chạy của người dùng có thể được mở.

Vì một số máy chủ VNC có thể chạy trên một máy tính cùng lúc nên tham số này được sử dụng để phân tách chúng số hiển thị. Ví dụ: một máy chủ VNC có thể đang chạy trên màn hình: 0, một máy chủ khác trên màn hình: 1. Mỗi số hiển thị tương ứng với số cổng TCP mà máy chủ VNC chấp nhận kết nối. Số cổng hiển thị có được bằng cách thêm số hiển thị vào số cơ sở cổng - 5900. Hiển thị:0 tương ứng với cổng TCP 5900, hiển thị:1 - cổng 5901.

3. Ngắt kết nối máy khách VNC khỏi máy tính từ xa
Khi đóng cửa sổ VNC client hoặc sau khi rời khỏi môi trường sử dụng các công cụ trên máy tính để bàn, tùy thuộc vào cài đặt của máy chủ VNC, phiên làm việc của người dùng có thể đóng khi tất cả các chương trình đang sử dụng bị dừng hoặc tiếp tục hoạt động và khả dụng trở lại khi kết nối với máy chủ VNC lại.
4. Điều chỉnh máy khách VNC
Một lượng lớn thông tin được truyền tới màn hình đòi hỏi phải tăng yêu cầu về tốc độ của kênh - đến tốc độ của nó. băng thông và thời gian truyền gói tin. Áp lực công suất dẫn đến sự chậm trễ khó chịu khi những thay đổi lớn thông tin hiển thị trên màn hình - mở cửa sổ mới, cuộn, v.v. Đặc biệt sự chậm trễ kéo dài sẽ xảy ra khi hiển thị ảnh và các hình ảnh hoặc thành phần giao diện khác có một số lượng lớn màu sắc và hình dạng phức tạp.

Tham số chính ảnh hưởng đến lượng dữ liệu được truyền là thuật toán mã hóa của đồ họa được truyền. Để giảm âm lượng và theo đó, tăng tốc công việc, bạn nên sử dụng thuật toán Tight, ZLib, ZRLE - so với dữ liệu không nén (Raw), chúng cung cấp khả năng nén hàng chục lần, tải đáng kể cho bộ xử lý. Các thuật toán mã hóa này cung cấp công việc thoải mái ngay cả trên các kênh có tốc độ 256-512 Kbps.

Để giảm lượng thông tin truyền qua mạng, bạn cũng có thể thiết lập mức nén cao (Compression Level, Compression Value), mức nén thấp chất lượng JPEG(Chất lượng JPEG) và bật chế độ giảm màu (-bgr233, Màu bị hạn chế). Tác dụng lớn nhất của chúng là chất lượng hình ảnh giảm rõ rệt do chế độ giảm số lượng màu - khối lượng thông tin truyền đi giảm tương ứng 1,5-3 lần, tốc độ hiển thị trên màn hình tăng lên 1,5 lần. -3 lần.

JPEG được thuật toán mã hóa chặt chẽ sử dụng để nén các vùng trên màn hình chứa ảnh và các hình ảnh phức tạp khác với một số lượng lớn màu sắc. Sử dụng Tight+JPEG giúp giảm lượng dữ liệu được truyền đi từ 2-5 lần. Các thuật toán mã hóa JPEG khác không được hỗ trợ.

1. Menu thả xuống “Hệ thống -> Tùy chọn”

Khối lượng dữ liệu được truyền và tốc độ hiển thị trên kênh là 1 Mbit/giây khi mở menu thả xuống “Hệ thống -> Thông số” (menu được đánh dấu bằng đường chấm màu xanh lục trong hình):

5. Các vấn đề thường gặp
Không thể kết nối với máy chủ VNC
Cần kiểm tra:
  1. có quyền truy cập Internet không;
  2. liệu máy chủ ảo có phản hồi với ping hay không;
  3. máy chủ VNC có chạy trên máy chủ ảo hay không;
  4. có tường lửa chặn quyền truy cập vào cổng TCP của máy chủ VNC không;
  5. Số hiển thị hoặc cổng TCP của máy chủ VNC có được chỉ định chính xác không (số cổng = 5900 + số hiển thị).
Hoạt động chậm thông qua một kênh khá nhanh
Nếu máy khách VNC không thể đồng ý với máy chủ VNC về việc sử dụng thuật toán mã hóa đồ họa với nén dữ liệu, thì thuật toán mặc định sẽ được chọn - Raw, thuật toán này truyền dữ liệu mà không cần nén. Cũng mã hóa mà không nén hoặc với cấp thấp máy khách VNC có thể tự động chọn nén khi làm việc thông qua tốc độ nhanh mạng nội bộ. Vấn đề này có thể được khắc phục bằng cách buộc thuật toán mã hóa bằng cấp độ cao nén - ZLib, ZRLE, Chặt chẽ.

Tuy nhiên, đối với một số kết hợp giữa máy khách và máy chủ, giải pháp này có thể không hữu ích do có lỗi trong quá trình đàm phán thuật toán mã hóa. Ví dụ: ứng dụng khách TightVNC có máy chủ RealVNC thường chỉ có thể hoạt động với mã hóa Raw. Giải pháp trong trường hợp này là thay đổi máy khách VNC hoặc máy chủ VNC.

Cách giúp người dùng của bạn truy cập hệ thống Linux nhiều người dùng từ mọi nơi

Kiến trúc máy chủ VNC và X

Giao diện đồ họa người dùng (GUI) trong Linux® sử dụng Hệ thống X Window (viết tắt X). X là một GUI khác thường ở một số khía cạnh, đặc biệt là nó có nguồn gốc giao diện mạng. Máy chủ X về bản chất là một chương trình máy chủ mạng. Các chương trình máy chủ mạng cung cấp cho các chương trình máy khách quyền truy cập vào tài nguyên cục bộ và điều này cũng đúng với máy chủ X. Điều đặc biệt là trong trường hợp máy chủ X, “tài nguyên cục bộ” là màn hình, bàn phím và chuột mà người dùng làm việc. Trong cấu hình phổ biến nhất, các chương trình máy khách X chạy trên cùng một máy tính với máy chủ. Do đó, LibreOffice, Chương trình thao tác hình ảnh GNU (GIMP) hoặc các chương trình khác là máy khách X sử dụng giao thức mạng X để chấp nhận dữ liệu từ người dùng và hiển thị kết quả trên cùng một máy tính.

Tuy nhiên, khi X được sử dụng trên mạng, người dùng sẽ ngồi ở máy chủ X và máy khách X là các chương trình cần được chạy trên một máy tính khác. Cấu hình này yêu cầu một giây giao thức mạng, thiết lập kết nối. Giao thức thứ hai này có thể là telnet, Secure Shell (SSH) hoặc X Display Manager Control Protocol (XDMCP). Máy chủ cho giao thức đăng nhập từ xa này chạy trên máy khách X và máy khách đăng nhập từ xa chạy trên máy chủ X. Máy chủ đăng nhập từ xa chạy máy khách X, từ đó thiết lập kết nối với máy chủ X. minh họa sự tương tác này. Mũi tên chấm chấm cho biết sự bắt đầu của phiên. (Với XDMCP, máy khách XDMCP được tích hợp vào chương trình máy chủ X.)

Hình 1: Remote Access X yêu cầu máy khách và máy chủ trên cả hai máy tính

Cấu hình này hoạt động tốt trên nhiều mạng cục bộ nhưng không phải không có nhược điểm. Ví dụ: nó yêu cầu khởi tạo giao thức mạng hai chiều, giao thức này có thể bị ngăn chặn bởi tường lửa hoặc bộ định tuyến Dịch địa chỉ mạng (NAT). (SSH loại bỏ trở ngại này bằng cách cho phép tạo đường hầm cho các phiên X.) Ngoài ra, mặc dù máy chủ X tồn tại trên hầu hết các nền tảng nhưng chúng thường không được cài đặt trên các máy tính chạy Kiểm soát cửa sổ®. Vì những lý do này và các lý do khác, nhiều người thích sử dụng giao thức khác, Bộ đệm khung từ xa (RFB), được triển khai trong Chương trình ảo Máy tính mạng (VNC).

VNC là một công cụ đa nền tảng cho phép truy cập từ xa vào Linux, UNIX®, Mac OS X, Windows và các hệ thống khác từ bất kỳ loại máy khách nào. Người dùng ngồi ở máy khách và truy cập từ xa máy tính chủ. TRONG Máy chủ Linux VNC phản chiếu nội dung của màn hình máy chủ X cục bộ sang máy tính từ xa hoặc chứa nội dung của chính nó máy chủ X riêng, có khả năng chạy độc lập với bất kỳ điều khiển nào trên màn hình cục bộ. Kết quả được hiển thị trong Hình 2. Một lần nữa, mũi tên chấm cho biết phiên bắt đầu. Cấu hình này loại bỏ sự cần thiết phải đảo ngược Kết nối mạng và vì máy khách và máy chủ VNC có sẵn cho nhiều hệ điều hành nên cùng một chương trình máy khách sẽ cung cấp quyền truy cập vào bất kỳ máy chủ nào.

Hình 2. Máy chủ VNC bao gồm máy chủ X có thể giao tiếp với chương trình địa phương thông qua máy khách X

Nhược điểm của VNC là xác thực RFB dựa trên mật khẩu không có tên người dùng. Vì vậy, mỗi người dùng phải bắt đầu một phiên máy chủ VNC độc lập và thiết lập kết nối với phiên bản VNC đó bằng cách chỉ định số cổng chính xác. Yêu cầu này có thể chấp nhận được đối với hệ thống một người dùng, nhưng lại gây ra sự bất tiện cực độ khi làm việc trên máy tính nhiều người dùng.

Để giải quyết vấn đề này, bạn có thể kết hợp hai phương pháp sau: cấu hình lại máy chủ XDMCP cục bộ để nó giúp máy chủ X được tích hợp trong VNC cung cấp xác thực nhiều người dùng còn thiếu. (Cấu hình kết quả được minh họa trong Hình 3. Mũi tên chấm cho biết bắt đầu phiên.) Bây giờ, khi người dùng VNC từ xa truy cập vào máy chủ VNC, họ có thể nhập tên người dùng và mật khẩu truy cập cho các phiên VNC duy nhất của riêng họ, để máy tính có thể được sử dụng lâu dài như bất kỳ người dùng nào.

Hình 3: Việc thêm XDMCP vào cấu hình VNC giúp tăng tính linh hoạt

Thiết lập máy chủ VNC

Có một số cách để chạy VNC, bao gồm sử dụng tập lệnh, liên kết VNC với môi trường máy tính để bàn của bạn bằng cách sử dụng dụng cụ để bàn và sử dụng xinetd để nghe các kết nối VNC. Cách tiếp cận sau này được mô tả ở đây vì nó cho phép VNC chạy theo cách có thể sử dụng máy chủ XDMCP. Trước khi chuyển sang hướng dẫn thiết lập VNC để chạy qua xinetd, bạn phải chọn máy chủ VNC.

Chọn máy chủ VNC

Có một số chương trình máy chủ VNC. (Xem phần). Một số phổ biến nhất là TightVNC, TigerVNC và RealVNC. Bài viết này sử dụng TightVNC làm ví dụ. Rất tiếc, chi tiết cấu hình đều dành riêng cho máy chủ và phân phối, vì vậy hướng dẫn ở đây sẽ cần được điều chỉnh cho phù hợp với phần mềm của bạn.

Cài đặt xinetd

Nhiều bản phân phối cài đặt siêu máy chủ xinetd theo mặc định, nhưng không phải tất cả. Vì phương pháp được mô tả ở đây giả sử sử dụng xinetd nên bạn phải cài đặt xinetd nếu nó chưa được cài đặt. Trên hầu hết các bản phân phối, xinetd có thể được cài đặt bằng trình quản lý gói, ví dụ bằng cách gọi apt-get install xinetd trên các bản phân phối dựa trên Debian hoặc zypper install xinetd trên openSUSE.

Bạn cũng có thể cần phải cấu hình quá trình khởi động xinetd. Thông thường, bạn có thể sử dụng tập lệnh khởi động System V (SysV) để khởi động một lần:

# /etc/init.d/xinetd bắt đầu

Để định cấu hình xinetd để tự động khởi động khi máy tính khởi động, bạn cần biết các tập lệnh khởi động của bản phân phối của bạn hoạt động như thế nào. Thông thường, việc này được thực hiện bằng một tiện ích như chkconfig (được sử dụng trên Fedora, openSUSE và các bản phân phối liên quan), update-rc.d (được sử dụng trên Debian và các bản phân phối liên quan) hoặc rc-update (được sử dụng trên Gentoo), đại loại như thế này:

# chkconfig xinetd trên # update-rc.d xinetd kích hoạt # rc-update thêm xinetd mặc định

Chỉ nhập một từ các lệnh này hoặc tìm lệnh tương đương cho bản phân phối của bạn.

Lưu ý rằng xinetd có thể không khởi động nếu nó không được cấu hình để chạy bất kỳ dịch vụ nào. Vì vậy, bạn có thể phải đợi để chạy nó cho đến khi cấu hình xinetd để quản lý máy chủ VNC của mình.

Thiết lập xinetd

Các máy chủ do xinetd quản lý sẽ đặt các tập tin cấu hình vào thư mục /etc/xinetd.d. Như vậy, để cấu hình xinetd quản lý VNC, bạn cần tạo hoặc chỉnh sửa file có kiểu tên /etc/xinetd.d/vnc.(Trên một số bản phân phối, chẳng hạn như openSUSE, gói máy chủ VNC sẽ cài đặt một tệp như vậy.) Liệt kê 1 cho thấy một ví dụ.

Liệt kê 1. Ví dụ về cấu hình VNC cho xinetd
dịch vụ vnc (vô hiệu hóa = không socket_type = giao thức luồng = tcp chờ = không có người dùng = không ai máy chủ = /usr/bin/Xvnc server_args = -inetd -once -query localhost -geometry 1024x768 -de sâu 16 loại = Cổng KHÔNG ĐƯỢC DANH SÁCH = 5900)

Mục này chỉ rõ một số tùy chọn xinetd, hầu hết các tùy chọn này nên được giữ nguyên. Dưới đây là danh sách các cài đặt có thể cần được cấu hình.

  • dịch vụ. VNC với thông số khác nhau có thể chạy trên nhiều cổng, nhưng trong trường hợp này, ở dòng đầu tiên của Liệt kê 1, bạn cần đặt cho VNC một tên dịch vụ riêng cho mỗi cổng.
  • máy chủ. Cài đặt này cần được thay đổi để trỏ đến tệp nhị phân chính của máy chủ VNC, thường được gọi là Xvnc.
  • server_args. Bạn gần như chắc chắn sẽ muốn thay đổi một số giá trị này, như được mô tả bên dưới.
  • Hải cảng. VNC sử dụng số cổng 5900 trở lên. Bạn có thể khởi động máy chủ với những nghĩa khác nhau các thông số thông qua các cổng khác nhau. Trong trường hợp này, mỗi phiên bản phải được gán số cổng riêng.

Phần khó nhất khi thiết lập xinetd là thiết lập các đối số máy chủ. Bạn có thể sử dụng các đối số được hiển thị trong Liệt kê 1 làm mô hình, thay đổi một số đối số đó.

  • -truy vấn localhost. Tùy chọn này chỉ định rằng máy chủ VNC X sẽ kiểm tra hệ thống localhost để xác thực XDMCP. Nó có thể được thay đổi nếu bạn muốn sử dụng một máy tính làm dịch giả để truy cập các chương trình của máy tính khác.
  • -hình học 1024x768 . Tùy chọn này đặt độ phân giải ảo của phiên VNC. Lưu ý rằng độ phân giải này không nhất thiết phải khớp với độ phân giải của máy chủ X thông thường đang chạy trên máy chủ. Bạn có thể tạo nhiều mục chạy ở các độ phân giải khác nhau để người dùng có thể đăng nhập vào máy chủ VNC ở độ phân giải phù hợp với nhu cầu của mình. hệ thống cục bộ.
  • -độ sâu 16 . Tham số này đặt độ sâu màu. Giá trị càng thấp thì màn hình cập nhật càng nhanh, nhưng trên màn hình có một lượng lớn màu sắc có thể bị biến dạng. Phạm vi giá trị chấp nhận được từ 2 đến 32.

Có nhiều tùy chọn khác và một số tùy chọn phụ thuộc vào máy chủ VNC. Tham khảo tài liệu máy chủ VNC của bạn.

Thiết lập máy chủ XDMCP

Hầu hết các bản phân phối Linux đều cấu hình máy chủ XDMCP của chúng để chỉ quản lý màn hình cục bộ. Để cho phép truy cập từ xa, bạn cần cấu hình lại máy chủ XDMCP để chấp nhận các yêu cầu truy cập từ máy chủ VNC chạy trên cùng một máy tính. Các chi tiết phụ thuộc vào máy chủ XDMCP. Ba cái được sử dụng phổ biến nhất trên Linux là Trình quản lý hiển thị Gnome (GDM), Trình quản lý hiển thị ánh sáng (LightDM) và Trình quản lý hiển thị KDE (KDM). Các máy chủ XDMCP khác, chẳng hạn như XDM, yêu cầu các cài đặt khác với những cài đặt được mô tả ở đây. Trong mọi trường hợp, sau khi cấu hình lại máy chủ XDMCP, bạn sẽ phải khởi động lại nó.

Chỉnh sửa tệp cấu hình XDMCP

Nếu bạn không chắc chắn máy chủ XDMCP nào đang được sử dụng trên hệ thống của mình, bạn có thể xác định điều này bằng cách xem danh sách quy trình bằng dòng dm, ví dụ:

$ ps rìu | grep dm 929? Ss 0:00 /usr/bin/kdm 962 tty7 Ss+ 0:19 /usr/bin/Xorg -br:0 vt7 -nolisten tcp -auth \ /var/lib/xdm/authdir/authfiles/A:0-pp4shb 30157 pts/3 S+ 0:00 grep --color=auto dm

Dòng đầu tiên của bản in này cho biết KDM đang chạy, vì vậy để VNC sử dụng XDMCP, bạn cần chỉnh sửa tệp cấu hình của máy chủ đó. Các tệp cấu hình của hầu hết các chương trình XDMCP đều có cùng định dạng. Chúng chứa các phần có tên được đặt trong dấu ngoặc vuông, chẳng hạn như . Các dòng theo sau tên phần chỉ định tham số bằng dấu bằng, ví dụ: Enable=true . Bảng 1 liệt kê tên tệp cấu hình, tên phần và tham số phải được xác định để XDMCP hoạt động trên một số máy chủ XDMCP Linux phổ biến.

Bảng 1. Các thông số cho phép XDMCP hỗ trợ VNC cho các máy chủ XDMCP khác nhau

Phần XDMCP trong tệp cấu hình có thể bị thiếu hoàn toàn. Nếu có, nó có thể vô hiệu hóa rõ ràng hỗ trợ XMDCP, chứa các tùy chọn đã nhận xét hoặc để trống. Bất kể trạng thái ban đầu của tệp là gì, bạn phải đảm bảo rằng phần XDMCP có mặt và hỗ trợ đó được bật. Ví dụ: hãy xem cách định cấu hình KDM để bật XDMCP:

Bật=true

Một số bản phân phối cho phép bạn kích hoạt các biện pháp bảo mật bổ sung mà bạn có thể cần phải thư giãn. Một trong số đó là tường lửa. Các tập lệnh tường lửa thường dành riêng cho từng phân phối, vì vậy hãy tham khảo tài liệu hệ thống của bạn để biết hướng dẫn về cách định cấu hình tường lửa. Bạn muốn localhost có quyền truy cập vào cổng 177 và máy khách VNC truy cập vào cổng 5900 (hoặc bất kỳ cổng nào khác được sử dụng cho VNC).

OpenSUSE có tập tin bổ sung cấu hình kiểm soát một số loại quyền truy cập, bao gồm quyền truy cập XDMCP: /etc/sysconfig/displaymanager. Mở tập tin này trong soạn thảo văn bản và tìm hàng tiếp theo:

DISPLAYMANAGER_REMOTE_ACCESS="không"

Thay đổi giá trị của tham số này thành "có". Nếu bạn để "no" thì cửa sổ đăng nhập máy chủ XDMCP sẽ không hiển thị khi kết nối với máy chủ VNC. Trong hầu hết các bản phân phối, sự thay đổi này Không bắt buộc: Tệp này chỉ sử dụng openSUSE.

Khởi động lại máy chủ XDMCP

Khi máy chủ XDMCP được cấu hình để hỗ trợ các kết nối từ xa, nó phải được khởi động lại. Trên các bản phân phối khởi động X thông qua tệp init SysV, chẳng hạn như Debian và Gentoo, việc này có thể được thực hiện bằng tùy chọn khởi động lại:

# /etc/init.d/gdm khởi động lại

Trên hệ thống sử dụng runlevel để chạy X, chẳng hạn như Fedora hoặc openSUSE, bạn cần vào runlevel chế độ văn bản(thường là 3) và sau đó quay lại cấp GUI (thường là 5):

#telinit 3 #telinit 5

Hãy nhớ rằng cả hai cách tiếp cận đều sẽ đăng xuất bạn khỏi X, vì vậy hãy lưu mọi công việc bạn đã thực hiện trong phiên X trước khi tiếp tục.

Kiểm tra và gỡ lỗi

Bây giờ bạn có thể đăng nhập từ máy tính từ xa bằng máy khách VNC. Hầu hết các bản phân phối Linux đều có lệnh vncviewer, vì vậy bạn có thể gõ:

vncviewer

Để đăng nhập tên từ xa thông qua VNC. Nếu VNC được cấu hình và hoạt động chính xác, kết quả sẽ giống như Hình 4. Nếu bạn thiết lập nhiều phiên VNC trên các cổng khác nhau, bạn có thể chỉ định số phiên VNC bằng cách chuyển nó như một phần của tên máy chủ. Đi vào:

vncviewer:3

Để đăng nhập vào phiên 3 (qua cổng 5903).

Hình 4. Khi được cấu hình để hoạt động với XDMCP, VNC cung cấp lời nhắc Linux thông thường

Nếu bạn không thấy màn hình đăng nhập XDMCP khi chạy thử nghiệm này, bạn sẽ cần phải gỡ lỗi. Dưới đây là một số khuyến nghị.

  • Nếu vncviewer báo cáo rằng kết nối bị từ chối, điều đó rất có thể có nghĩa là siêu máy chủ trên máy chủ VNC không được cấu hình đúng cách. Kiểm tra cấu hình xinetd và thử khởi động lại siêu máy chủ. Cũng có thể tường lửa đang chặn quyền truy cập vào máy chủ VNC.
  • Nếu máy khách VNC khởi động và kết nối với máy chủ nhưng bạn chỉ thấy màn hình màu xám với con trỏ có thể di chuyển được thì rất có thể vấn đề xảy ra với cấu hình máy chủ XDMCP. Kiểm tra các cài đặt ở trên và khởi động lại máy chủ XDMCP.
  • Xem lại các tệp nhật ký sự kiện như bạn thường làm khi gỡ lỗi. Bạn có thể cần tìm kiếm tất cả các tệp nhật ký trong thư mục /var/log bằng cách sử dụng các liên kết đến xinetd, máy chủ XDMCP và máy chủ VNC của bạn.

Các vấn đề bảo mật của VNC

RFB không phải là một giao thức an toàn; Hầu hết máy khách và máy chủ VNC không mã hóa dữ liệu của họ. (VNC mã hóa mật khẩu riêng, nhưng cách tiếp cận được mô tả ở đây không sử dụng các mật khẩu này.) Hãy cẩn thận khi chọn cách thức và vị trí cài đặt VNC. Nếu bạn muốn sử dụng VNC trong mạng không an toàn, có thể có ba lựa chọn:

  • sử dụng ảo Mạng riêng tư(VPN);
  • giao thức đường hầm thông qua SSH;
  • Sử dụng tùy chọn VNC hỗ trợ mã hóa, chẳng hạn như TigerVNC với khả năng mã hóa Transport Layer Security.

Khi bạn kích hoạt các cửa sổ đăng nhập VNC như được mô tả trong bài viết này, thế giới bên ngoàiÍt nhất hai cổng được mở (VNC và XDMCP). Cả hai cổng có thể bị hạn chế bởi các quy tắc tường lửa để giảm thiểu nguy cơ lạm dụng. Lưu ý rằng cổng XDMCP (UDP 177) chỉ được mở cho localhost, vì vậy quy tắc tường lửa cho cổng này có thể khá hạn chế.

Phần kết luận

Nói chung, kết nối VNC và XDMCP là một phương pháp hữu ích để cung cấp khả năng đăng nhập từ xa với giao diện người dùng đồ họa cho các máy tính Linux nhiều người dùng. Phương pháp này có ưu điểm hơn so với việc áp dụng trực tiếp XDMCP trong môi trường đa nền tảng hoặc khi có sự cố do tường lửa hoặc NAT gây ra. Trên các máy tính nhiều người dùng, phương thức kết nối VNC trực tiếp phổ biến hơn được ưa chuộng hơn. Có những vấn đề an toàn cần xem xét khi sử dụng phương pháp này. Hãy chuẩn bị thiết lập các quy tắc tường lửa để hạn chế truy cập không mong muốn từ bên ngoài và sử dụng mã hóa nếu dữ liệu truyền qua mạng không đáng tin cậy.

Mặc dù Raspberry Pi hoạt động tốt với màn hình hoặc TV sử dụng cáp HDMI, nhưng các tình huống thường phát sinh khi không cần màn hình và chỉ cần xem màn hình từ xa từ một máy tính khác là đủ. Trong trường hợp này VNC sẽ giúp chúng tôi. Nhân tiện, hầu hết các tác vụ, chẳng hạn như lập trình hoặc cấu hình, đều có thể được giải quyết từ xa hệ điều hành.
Chúng ta cần gì?

Giả sử Raspberry Pi đã cài đặt hệ điều hành ( phiên bản đặc biệt Linux Phân phối Debian) và Windows 7 được cài đặt trên máy tính từ xa, để thực hiện việc này, bạn cần cài đặt một số loại máy khách VNC cho Windows, ví dụ như UltraVNC - nó khá tiện lợi và miễn phí.
Trang tải xuống UltraVNC

Sau khi máy chủ VNC được cấu hình và chạy, máy khách UltraVNC sẽ đủ để kết nối từ xa với Raspberry Pi. Tuy nhiên, nếu chúng ta cũng định cấu hình VNC từ xa, chúng ta sẽ cần thêm Máy khách SSH- chương trình PuTTY miễn phí.
Trang tải xuống PuTTY

Điều cuối cùng chúng ta cần là địa chỉ IP của Raspberry Pi của bạn. Nếu nó được gán một địa chỉ tĩnh thì thế là đủ. Nếu bạn biết cách tra cứu địa chỉ IP trên bộ định tuyến của mình thì điều đó cũng là đủ. Nếu địa chỉ không được biết và không có cách nào để tra cứu thì bạn sẽ cần một chương trình quét địa chỉ IP trên mạng. Advanced IP Scanner khá phù hợp cho việc này; nó sẽ quét mạng cục bộ và hiển thị danh sách tất cả các thiết bị cho biết địa chỉ IP của từng thiết bị. Thông thường, việc xác định địa chỉ của Raspberry Pi không khó; trong danh sách nó có tên “raspberrypi” hoặc tương tự.
Trang tải xuống Máy quét IP nâng cao

Trong trường hợp bộ định tuyến, thông thường chỉ cần xem danh sách các thiết bị được kết nối là đủ; Raspberry Pi có thể được xác định theo cách tương tự như mô tả ở trên. Thật không may, không thể mô tả cách thực hiện việc này chi tiết hơn trong khuôn khổ bài viết này - tất cả các bộ định tuyến đều hơi khác nhau.

Khởi chạy SSH trên Raspberry Pi

Hãy bắt đầu với SSH là gì. Đây là chương trình có thể chạy trong phòng mổ hệ thống Linux và cho phép bạn truy cập từ xa vào bảng điều khiển (dòng lệnh) của Raspberry Pi. Với sự trợ giúp của nó, bạn có thể chạy bất kỳ chương trình nào hoặc thực thi lệnh trên dòng lệnh từ xa bằng ứng dụng khách SSH - PuTTY.

Theo mặc định, máy chủ SSH bị tắt trong Raspbian, vì vậy bạn cần khởi động nó trước. Để thực hiện việc này, bạn sẽ phải kết nối Raspberry Pi với màn hình hoặc TV và kết nối nó với bàn phím USB. Có hai cách để khởi động máy chủ SSH. Một cách đơn giản hơn là sử dụng chương trình raspi-config. Để thực hiện việc này, bạn cần gõ lệnh và chọn “ ssh Kích hoạt hoặc vô hiệu hóa máy chủ ssh» trong menu đề xuất:

Một cách khác là nhập lệnh sudo /etc/init.d/ssh bắt đầu như sau:

Điểm khác biệt là ở phương pháp đầu tiên, sử dụng chương trình raspi-config, chúng ta không chỉ khởi động máy chủ SSH mà còn thêm nó vào tính năng tự khởi động của hệ điều hành, điều này có thể không tốt lắm nếu không cần đến máy chủ SSH. thời gian. Trong trường hợp thứ hai, chúng tôi chỉ chạy nó cho đến lần khởi động lại tiếp theo.

Cuối cùng, chúng tôi sẽ mô tả cách chạy máy chủ SSH mà không cần sử dụng màn hình hoặc bàn phím. Để thực hiện việc này, bạn cần tháo thẻ SD đã cài đặt Rasbian, lắp thẻ vào đầu đọc thẻ và kết nối với máy tính chạy Windows.
Thẻ SD Raspberry Pi có một phân vùng nhỏ được định dạng trong hệ thống Fat32 mà Windows hiểu được. Phần này chứa một số tập tin cấu hình. Nội dung của thẻ SD trông như thế này:

Để đảm bảo máy chủ SSH khởi động, bạn cần đổi tên tệp boot_enable_ssh.rc thành boot.rc:

Bây giờ tất cả những gì bạn phải làm là lắp lại thẻ SD vào Raspberry Pi và bật nó lên. Máy chủ SSH sẽ được khởi động!

Kết nối qua SSH

Như đã đề cập ở trên, để kết nối với Raspberry Pi từ xa bằng VNC, trước tiên bạn phải khởi động máy chủ VNC. Dưới đây chúng tôi chỉ ra cách thực hiện thủ tục này từ xa. Để làm điều này, bạn sẽ cần một ứng dụng khách SSH - PuTTY. Sau khi tải xuống chương trình PuTTY, bạn chỉ cần chạy tệp kết quả; không cần cài đặt. Cửa sổ sau sẽ mở ra:

Trong trường Tên máy chủ, nhập địa chỉ IP được tìm thấy ở đầu. Sau đó nhấp vào nút Mở. Khi PuTTY kết nối với máy chủ SSH, một cửa sổ terminal sẽ mở và nhắc nhập thông tin xác thực (người dùng pi với mật khẩu mặc định Raspberry):

Khi thông tin đăng nhập chính xác đã được nhập, một dấu nhắc lệnh sẽ xuất hiện. Tại đây bạn có thể nhập bất kỳ lệnh Raspberry Pi nào:

Thiết lập máy chủ VNC qua SSH

Bây giờ kết nối đã được thiết lập, bạn cần khởi động máy chủ VNC. Nếu bạn khởi động máy chủ lần đầu tiên thì rất có thể bạn cần hoàn tất quá trình cài đặt trước. Giả định rằng Raspberry Pi có quyền truy cập Internet vì sẽ cần cài đặt máy chủ VNC. Để thực hiện việc này, hãy chạy lệnh:
sudo apt-get cài đặt chặt chẽvncserver
Như đã nêu ở trên, PuTTY thực thi các lệnh được nhập trực tiếp trên Raspberry Pi, do đó lệnh được nhập ở trên sẽ cài đặt máy chủ VNC trên máy tính của bạn.
Xin lưu ý rằng trong quá trình cài đặt, bạn sẽ được hỏi có nên cài đặt chương trình mà không cần xác minh hay không (Cài đặt các gói này mà không cần xác minh?). Bạn sẽ cần phải trả lời “y” cho câu hỏi này.

Sau khi cài đặt hoàn tất, máy chủ VNC cần được khởi động. Để làm điều này sử dụng lệnh vncserver:1 -hình học 1280×800 -độ sâu 16 -pixelformat rgb565

Lệnh này đã khởi động máy chủ VNC! TRONG trong trường hợp này, điều này có nghĩa là một phiên X ảo (đại diện ảo của máy tính để bàn Raspberry Pi) đang chạy, giống hệt như lệnh startx khi khởi động với màn hình được kết nối. Bây giờ, khi bạn khởi chạy ứng dụng khách VNC và kết nối, bạn sẽ được kết nối với máy tính để bàn ảo cụ thể này.

Hầu hết một phần quan trọng của lệnh này - tham số :1 . Nó chỉ định số cổng mà quy trình VNC sẽ được khởi chạy. Số cổng có thể là bất cứ thứ gì nhưng bạn cần phải nhớ nó, bạn sẽ cần đến nó khi kết nối. Khác thông số quan trọng, đây là độ phân giải (trong trường hợp này là kích thước) của màn hình ảo. Bạn có thể chỉ định nó theo bất kỳ cách nào, nhưng bạn không nên chỉ định nhiều hơn độ phân giải thực máy tính mà việc truy cập từ xa được thực hiện.

Khi bạn khởi động VNC lần đầu tiên, máy chủ sẽ yêu cầu bạn nhập mật khẩu. Mật khẩu này sẽ cần thiết khi kết nối với máy tính để bàn từ xa.

Mật khẩu thứ hai mà máy chủ VNC sẽ yêu cầu là mật khẩu chỉ xem. Nếu bạn nhập mật khẩu này khi kết nối, bạn sẽ có thể nhìn thấy màn hình ảo nhưng bàn phím và chuột sẽ bị tắt.

Kết nối bằng UltraVNC

Sau khi khởi động máy chủ VNC, điều cuối cùng cần làm là kết nối với nó từ xa. Khởi chạy UtlraVNC, nhập địa chỉ IP, số cổng (1) và nhấp vào nút Kết nối.
Và bây giờ - mọi thứ đã sẵn sàng!

Lưu ý quan trọng! Hình ảnh bàn từ xa có thể khác nhau tùy thuộc vào thông tin xác thực vncserver được khởi chạy. Khi chạy dưới thông tin xác thực của người dùng thông thường, tức là. như đã nêu ở trên, màn hình nền sẽ trông như bình thường. Mặt khác, khi chạy vncserver bằng root bằng lệnh sudo, desktop sẽ trông như hình bên dưới. Nhân tiện, điều tương tự cũng áp dụng cho lệnh startx khi làm việc trực tiếp với Raspberry Pi (cục bộ).

Trình bày để bạn chú ý Khóa học mới từ đội Codeby- "Thử nghiệm thâm nhập các ứng dụng Web từ đầu." Lý thuyết chung, chuẩn bị môi trường làm việc, làm mờ và lấy dấu vân tay thụ động, làm mờ chủ động, Lỗ hổng, Hậu khai thác, Công cụ, Kỹ thuật xã hội và nhiều hơn thế nữa.


Máy tính mạng ảo (VNC) cho phép truy cập chia sẻ tới những người dùng từ xa khácđến môi trường máy tính để bàn localhost qua mạng. Để cung cấp quyền truy cập vào máy tính để bàn, máy chủ VNC phải chạy trên máy chủ cục bộ và người dùng đã bị xóa kết nối với máy chủ VNC bằng một số ứng dụng khách xem VNC.

Trong hướng dẫn này tôi sẽ giải thích cách thiết lập máy chủ VNC trên Linux. Để làm điều này, tôi sẽ sử dụng vino, một phần mềm máy chủ VNC dành cho môi trường máy tính để bàn Gnome.

Để cài đặt vino máy chủ VNC trên máy chạy Debian, Ubuntu hoặc Linux Mint:

$ sudo apt-get cài đặt vino

Để cài đặt máy chủ vino VNC trên máy có Fedora, CentOS hoặc RHEL:

$ sudo yum cài đặt vino

Sau khi cài đặt, bạn có thể chạy vino và kích hoạt máy chủ VNC bằng cách nhập lệnh vino-preferences.

$vino-ưu tiên

Lệnh trên sẽ mở cửa sổ cài đặt vino để truy cập vào màn hình nền như hình bên dưới. Trong cửa sổ nơi chứa “Chia sẻ”, hãy chọn hộp để cho phép người dùng khác nhìn thấy màn hình của bạn. Bạn cũng có thể đặt mật khẩu VNC. Khi cài đặt xong, cửa sổ này có thể được đóng lại.

Về lý thuyết, bản thân tiện ích vino-preferences sẽ khởi động máy chủ VNC. Nếu máy chủ VNC không chạy vì lý do nào đó, bạn có thể khởi động máy chủ VNC theo cách thủ công như sau.

$ /usr/lib/vino/vino-server &

TRÊN Linux mới nhất Mint với máy tính để bàn Cinnamon được biết là không có sở thích về vino. Để bật cấu hình máy chủ VNC trong Mint trên màn hình Cinnamon, thay vào đó hãy sử dụng dconf-editor, như được mô tả ở đây.

Bạn có thể kiểm tra xem vino có đang chạy hay không bằng cách gõ lệnh sau.

$ sudo netstat -pl | grep vino tcp 0 0 *:5900 *:* LISTEN 3246/vino-server tcp6 0 0 [::]:5800 [::]:* LISTEN 3246/vino-server tcp6 0 0 [::]:5900 [:: ]:* NGHE 3246/vino-server

Như bạn có thể thấy ở trên, vino-server đang chạy trên cổng TCP với số 5800 và 5900. Bạn có thể sử dụng bất kỳ phần mềm nào có chức năng VNC client để kết nối với máy chủ VNC.

Nếu máy chủ VNC được định cấu hình để bạn phải xác nhận mọi quyền truy cập VNC vào máy tính để bàn của mình thì bạn sẽ thấy thông báo bật lên sau mỗi khi nhận được yêu cầu kết nối VNC. Chỉ sau khi bạn kích hoạt VNC thì máy khách VNC mới có thể truy cập vào máy tính để bàn của bạn.