Android

Cách cài đặt và cấu hình vnc trên centos 7

CentOS vnc server setup

CentOS vnc server setup

Mục lục:

Anonim

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.

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. Chúng tôi sẽ cho rằng bạn đã đăng nhập với tư cách là người dùng có tên linuxize .

Cài đặt môi trường máy tính để bàn Xfce

Cài đặt máy chủ CentOS thường không đi kèm với môi trường máy tính để bàn được cài đặt, vì vậy chúng tôi sẽ bắt đầu bằng cách cài đặt môi trường máy tính để bàn nhẹ.

Trong hướng dẫn này, chúng tôi sẽ cài đặt Xfce. Nó là một tài nguyên hệ thống nhanh, ổn định và ít, điều này lý tưởng cho việc sử dụng trên các máy chủ từ xa.

Các gói Xfce có sẵn trong kho EPEL. Nếu bạn không bật kho lưu trữ EPEL trên máy chủ của mình, bạn có thể thực hiện bằng cách nhập:

sudo yum install epel-release

Khi kho lưu trữ được thêm vào, hãy cài đặt Xfce trên CentOS của bạn với:

sudo yum groupinstall xfce

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 và các phụ thuộc có thể mất một chút thời gian.

Cài đặt máy chủ VNC

Chúng tôi sẽ sử dụng TigerVNC làm máy chủ VNC của chúng tôi. TigerVNC là một máy chủ VNC mã nguồn mở được duy trì tích cực.

Nhập lệnh sau để cài đặt TigerVNC trên máy chủ CentOS của bạn:

yum install tigervnc-server

Bây giờ máy chủ VNC đã được cài đặt, bước tiếp theo là chạy lệnh vncserver sẽ 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 'server2.linuxize.com:1 (linuxize)' desktop at:1 on machine server2.linuxize.com Starting applications specified in /etc/X11/Xvnc-session Log file is /home/linuxize/.vnc/server2.linuxize.com:1.log

Lần đầu tiên lệnh vncserver được chạy, nó sẽ tạo và lưu trữ tệp mật khẩu trong thư mục ~/.vnc sẽ được tạo nếu không có.

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 nhớ 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, trước tiên 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 Xvnc process ID 2432

Cấu hình máy chủ VNC

Bây giờ, cả Xfce và TigerVNC đều được cài đặt trên máy chủ CentOS của chúng tôi, bước tiếp theo là định cấu hình TigerVNC để sử dụng Xfce. Để làm như vậy, mở tệp sau:

nano ~/.vnc/xstartup

Và thay đổi dòng cuối cùng từ exec /etc/X11/xinit/xinitrc thành exec startxfce4 :

~ /.vnc / xstartup

#!/bin/sh unset SESSION_MANAGER unset DBUS_SESSION_BUS_ADDRESS exec startxfce4

Lưu và đóng tập tin. 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.

Đây là một ví dụ:

~ /.vnc / cấu hình

# securitytypes=vncauth, tlsvnc # desktop=sandbox geometry=1920x1080 # localhost # alwaysshared dpi=96

Tạo tệp đơn vị Systemd

Chúng tôi sẽ tạo một tệp đơn vị systemd 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, giống như bất kỳ dịch vụ systemd nào khác.

Sao chép tệp đơn vị vncserver bằng lệnh cp :

sudo cp /usr/lib/systemd/system/[email protected] /etc/systemd/system/vncserver@:1.service

Mở tệp bằng trình soạn thảo văn bản của bạn và thay thế với tên người dùng thực tế của bạn.

sudo nano /etc/systemd/system/vncserver@\:1.service /etc/systemd/system/vncserver@:1.service

Description=Remote desktop service (VNC) After=syslog.target network.target Type=forking # Clean any existing files in /tmp/.X11-unix environment ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' ExecStart=/usr/sbin/runuser -l linuxize -c "/usr/bin/vncserver %i" PIDFile=/home/linuxize/.vnc/%H%i.pid ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 ||:' WantedBy=multi-user.target

Lưu và đóng tập tin. Thông báo cho systemd rằng chúng tôi đã tạo một tệp đơn vị mới với:

sudo systemctl daemon-reload

Bước tiếp theo là kích hoạt tệp đơn vị bằng lệnh sau:

sudo systemctl enable vncserver@:1.service

Số 1 sau dấu @ xác định cổng hiển thị mà dịch vụ VNC sẽ chạy, trong trường hợp của chúng tôi là mặc định 1 và máy chủ VNC sẽ lắng nghe trên cổng 5901 như chúng ta đã thảo luận trong phần trước.

Bắt đầu dịch vụ VNC bằng cách thực hiện:

sudo systemctl start vncserver@:1.service

Xác minh rằng dịch vụ được bắt đầu thành công với:

sudo systemctl status vncserver@:1.service

● vncserver@:1.service - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/vncserver@:1.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2018-09-16 09:59:53 UTC; 4s ago Process: 6391 ExecStart=/usr/sbin/runuser -l linuxize -c /usr/bin/vncserver %i (code=exited, status=0/SUCCESS) Process: 6389 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill %i > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 6413 (Xvnc) CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service ‣ 6413 /usr/bin/Xvnc:1 -auth /home/linuxize/.Xauthority -desktop server2.linuxize.com:1 (linuxize) -fp catalogue:/etc/X11/fontpath.d -geometry 1024x768 -pn -rfbauth /home/linuxize/.vnc/passwd -rfbport…

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 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 .

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

Đến bây giờ, 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ủ CentOS 7 của mình 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 và tạo 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.

centos vnc