Android

Jak zainstalować i skonfigurować VNC na Ubuntu 18.04

How to Install and Configure VNC on Ubuntu 18.04

How to Install and Configure VNC on Ubuntu 18.04

Spisu treści:

Anonim

Ten przewodnik opisuje kroki niezbędne do instalacji i konfiguracji serwera VNC w systemie Ubuntu 18.04. Pokażemy również, jak bezpiecznie połączyć się z serwerem VNC przez tunel SSH.

Virtual Network Computing (VNC) to graficzny system udostępniania pulpitu, który pozwala używać klawiatury i myszy do zdalnego sterowania innym komputerem. Jest to otwarta alternatywa dla protokołu zdalnego pulpitu Microsoft (RDP).

Wymagania wstępne

Przed kontynuowaniem samouczka upewnij się, że jesteś zalogowany jako użytkownik z uprawnieniami sudo.

Instalowanie środowiska pulpitu

Większość serwerów nie ma zainstalowanego środowiska pulpitu, więc zaczniemy od zainstalowania lekkiego środowiska pulpitu.

W repozytoriach Ubuntu dostępnych jest kilka środowisk graficznych (DE). W tym samouczku będziemy instalować Xfce. Jest to szybkie, stabilne i lekkie środowisko pulpitu, co czyni go idealnym do użycia na zdalnym serwerze.

Najpierw zaktualizuj system za pomocą:

sudo apt update sudo apt upgrade

Następnie wpisz następujące polecenie, aby zainstalować Xfce na serwerze:

sudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils

W zależności od systemu pobieranie i instalowanie pakietów Xfce może trochę potrwać.

Instalowanie serwera VNC

Istnieje również kilka różnych serwerów VNC dostępnych w repozytoriach Ubuntu, takich jak TightVNC, TigerVNC i x11vnc. Każdy serwer VNC ma różne mocne i słabe strony pod względem szybkości i bezpieczeństwa.

Będziemy instalować TigerVNC, który jest aktywnie utrzymywanym wysokowydajnym serwerem VNC.

Wpisz następujące polecenie, aby zainstalować TigerVNC na serwerze Ubuntu:

sudo apt install tigervnc-standalone-server tigervnc-common

Teraz, gdy serwer VNC jest zainstalowany, następnym krokiem jest uruchomienie komendy vncserver która utworzy początkową konfigurację i ustawi hasło. Nie używaj sudo podczas uruchamiania następującego polecenia:

vncserver

Zostaniesz poproszony o podanie i potwierdzenie hasła oraz czy ustawić go jako hasło tylko do odczytu. Jeśli zdecydujesz się ustawić hasło tylko do odczytu, użytkownik nie będzie mógł wchodzić w interakcje z instancją VNC za pomocą myszy i klawiatury.

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 Use xtigervncviewer -SecurityTypes VncAuth -passwd /home/linuxize/.vnc/passwd:1 to connect to the VNC server.

Przy pierwszym uruchomieniu komenda vncserver utworzy i zapisze plik haseł w katalogu ~/.vnc który zostanie utworzony, jeśli nie będzie obecny.

Uwaga :1 po nazwie hosta na powyższym wyjściu. Wskazuje numer portu wyświetlania, na którym działa serwer VNC. W naszym przypadku serwer działa na porcie TCP 5901 (5900 + 1). Jeśli utworzysz drugie wystąpienie za pomocą vncserver , będzie ono działać na następnym wolnym porcie, tj. :2 co oznacza, że ​​serwer działa na porcie 5902 (5900 + 2).

Należy pamiętać, że podczas pracy z serwerami VNC :X jest portem wyświetlania, który odnosi się do 5900+X

Przed przejściem do następnego kroku najpierw zatrzymaj instancję VNC, używając komendy vncserver z opcją -kill i numerem serwera jako argumentem. W naszym przypadku serwer działa na porcie 5901 ( :1 ), więc zatrzymamy go:

vncserver -kill:1

Killing Xtigervnc process ID 7264… success!

Konfigurowanie serwera VNC

Teraz, gdy mamy zarówno Xfce, jak i TigerVNC zainstalowane na naszym serwerze, musimy skonfigurować TigerVNC do korzystania z Xfce. W tym celu utwórz następujący plik:

~ /.vnc / xstartup

nano ~/.vnc/xstartup

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

Zapisz i zamknij plik. Powyższe polecenia będą wykonywane automatycznie przy każdym uruchomieniu lub ponownym uruchomieniu serwera TigerVNC.

Plik ~/.vnc/xstartup również musi mieć uprawnienia do wykonywania. Uruchom następującą komendę chmod aby upewnić się, że uprawnienia są prawidłowe:

chmod u+x ~/.vnc/xstartup ~ /.vnc / config

geometry=1920x1084 dpi=96

Tworzenie pliku jednostki Systemd

Stworzymy plik jednostki systemowej, który umożliwi nam łatwe uruchomienie, zatrzymanie i ponowne uruchomienie usługi VNC w razie potrzeby, tak samo jak w przypadku każdej innej usługi systemowej.

Otwórz edytor tekstu, skopiuj i wklej do niego następującą konfigurację. Pamiętaj, aby zmienić nazwę użytkownika w linii 7, aby pasowała do Twojej nazwy użytkownika.

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

Zapisz i zamknij plik.

Powiadom systemd, że utworzyliśmy nowy plik jednostki z:

sudo systemctl daemon-reload

Następnym krokiem jest włączenie pliku jednostkowego za pomocą następującego polecenia:

sudo systemctl enable [email protected]

Liczba 1 po znaku @ określa port wyświetlacza, na którym będzie działać usługa VNC. Oznacza to, że serwer VNC będzie nasłuchiwał na porcie 5901 , jak omówiliśmy w poprzedniej sekcji.

Uruchom usługę VNC, wykonując:

sudo systemctl start [email protected]

Sprawdź, czy usługa została pomyślnie uruchomiona za pomocą:

sudo systemctl status [email protected]

[email protected] - Remote desktop service (VNC) Loaded: loaded (/etc/systemd/system/[email protected]; indirect; vendor preset: enabled) Active: active (running) since Thu 2018-08-16 19:05:54 UTC; 4s ago Process: 9893 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill:1 > /dev/null 2>&1 ||: (code=exited, status=0/SUCCESS) Main PID: 9900 (vncserver) Tasks: 0 (limit: 507) CGroup: /system.slice/system-vncserver.slice/[email protected] ‣ 9900 /usr/bin/perl /usr/bin/vncserver:1 -geometry 1440x900 -alwaysshared -fg

Łączenie z serwerem VNC

VNC nie jest protokołem szyfrowanym i może podlegać wąchaniu pakietów. Zalecanym podejściem jest utworzenie tunelu SSH, który bezpiecznie przekaże ruch z komputera lokalnego na porcie 5901 do serwera na tym samym porcie.

Skonfiguruj tunelowanie SSH w systemie Linux i macOS

ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address Zostaniesz poproszony o podanie hasła użytkownika.

Nie zapomnij zastąpić username i server_ip_address swoją nazwą użytkownika i adresem IP serwera.

Skonfiguruj tunelowanie SSH w systemie Windows

Otwórz Putty i wprowadź adres IP swojego serwera w polu Host name or IP address .

Możesz rozpocząć interakcję ze zdalnym pulpitem XFCE z lokalnego komputera za pomocą klawiatury i myszy.

Wniosek

Do tej pory powinieneś mieć uruchomiony serwer VNC i możesz łatwo zarządzać serwerem Ubuntu 18.04 z lokalnego komputera stacjonarnego za pomocą łatwego w użyciu interfejsu graficznego.

Aby skonfigurować serwer VNC do uruchamiania wyświetlania dla więcej niż jednego użytkownika, utwórz konfigurację początkową i skonfiguruj hasło za pomocą polecenia vncserver . Konieczne będzie również utworzenie nowego pliku usługi przy użyciu innego portu.

Jeśli masz jakieś pytania, zostaw komentarz.

ubuntu vnc