# Πώς να εγκαταστήσετε έναν διακομιστή VNC στο Ubuntu 22.04

Η εγκατάσταση ενός διακομιστή VNC στο Ubuntu 22.04 σας δίνει τη δυνατότητα να έχετε πρόσβαση **στην επιφάνεια εργασίας του Linux** σας **από οπουδήποτε**. Είτε εργάζεστε από το σπίτι, είστε σε επαγγελματικό ταξίδι είτε απλώς θέλετε να εργαστείτε από ένα άλλο δωμάτιο — με έναν διακομιστή VNC, θα έχετε πάντα πρόσβαση στο εργασιακό σας περιβάλλον.

## Ποια είναι τα πλεονεκτήματα ενός διακομιστή VNC στο Ubuntu 22.04;

Η χρήση ενός διακομιστή VNC στο Ubuntu 22.04 προσφέρει πολλές δυνατότητες που διευκολύνουν σημαντικά την καθημερινή εργασία. Με έναν διακομιστή VNC, μπορείτε να έχετε πρόσβαση στην επιφάνεια εργασίας του Ubuntu σας **από οπουδήποτε στον κόσμο**. Αυτό σημαίνει ότι δεν χρειάζεται να βρίσκεστε στο γραφείο σας για να διαχειρίζεστε τις εφαρμογές και τα δεδομένα σας. Αυτή η ευελιξία είναι εξαιρετικά βολική για όσους εργάζονται εξ αποστάσεως, για όσους ταξιδεύουν για επαγγελματικούς λόγους ή για όσους επιθυμούν να εργάζονται από διαφορετικές τοποθεσίες. Επιπλέον, η εγκατάσταση ενός διακομιστή VNC είναι σχετικά εύκολη, οπότε ακόμη και οι χρήστες με λιγότερες τεχνικές γνώσεις μπορούν να δημιουργήσουν γρήγορα μια λειτουργική απομακρυσμένη σύνδεση.

Ένας διακομιστής VNC προάγει επίσης τη συνεργασία μεταξύ των ομάδων. Επιτρέπει σε πολλά μέλη **να έχουν ταυτόχρονη πρόσβαση στην ίδια επιφάνεια εργασίας**. Αυτό δίνει τη δυνατότητα στις ομάδες να συνεργάζονται αποτελεσματικά ανεξάρτητα από την τοποθεσία τους, να εργάζονται από κοινού σε έργα και να επιλύουν προβλήματα σε πραγματικό χρόνο. Οι διαχειριστές και το προσωπικό υποστήριξης πληροφορικής μπορούν επίσης να επιλύουν σφάλματα εξ αποστάσεως, χωρίς να χρειάζεται να βρίσκονται επί τόπου. Αυτό εξοικονομεί χρόνο και κόστος μετακινήσεων και επιπλέον συναντήσεων. Όσον αφορά την ασφάλεια, πολλοί διακομιστές VNC στο Ubuntu 22.04 διαθέτουν ισχυρές επιλογές. Οι κρυπτογραφημένες συνδέσεις και οι διάφορες μέθοδοι ελέγχου ταυτότητας προστατεύουν τα δεδομένα σας και διασφαλίζουν ότι μόνο εξουσιοδοτημένα άτομα έχουν πρόσβαση στο σύστημά σας.

## Αυτές είναι οι απαιτήσεις για έναν διακομιστή VNC στο Ubuntu 22.04

Πρώτον, χρειάζεστε μια λειτουργική εγκατάσταση του Ubuntu 22.04. Πολλοί διακομιστές VNC είναι πλήρως συμβατοί με αυτό το λειτουργικό σύστημα και όλα τα απαιτούμενα πακέτα και εξαρτήσεις διατίθενται στα επίσημα αποθετήρια του Ubuntu. Βεβαιωθείτε ότι το σύστημά σας είναι ενημερωμένο, ώστε να αποφύγετε πιθανές δυσκολίες κατά την εγκατάσταση. Γενικά, θα πρέπει να πληροίτε τις ακόλουθες προϋποθέσεις:

- **Ubuntu 22.04:** Μια λειτουργική και ενημερωμένη εγκατάσταση του Ubuntu 22.04.
- **Σύνδεση δικτύου:** Μια σταθερή σύνδεση Ethernet ή WLAN για απομακρυσμένη πρόσβαση.
- **Δικαιώματα root:** Ο χρήστης του διακομιστή VNC απαιτεί δικαιώματα root για την εγκατάσταση και τη διαμόρφωση.
- **Πακέτο λογισμικού:** Εγκατάσταση λογισμικού διακομιστή VNC, όπως TigerVNC, RealVNC ή x11vnc από τα αποθετήρια του Ubuntu.
- **Περιβάλλον επιφάνειας εργασίας:** Πρέπει να είναι εγκατεστημένο το απαιτούμενο περιβάλλον επιφάνειας εργασίας (π.χ. GNOME, XFCE).
- **Διαμόρφωση τείχους προστασίας:** Ανοίξτε τη θύρα 5900 ή προσαρμόστε τους κανόνες του τείχους προστασίας ώστε να επιτρέπεται η κυκλοφορία VNC.

## Πώς να εγκαταστήσετε έναν διακομιστή VNC στο Ubuntu 22.04

Υπάρχουν πολλές επιλογές όσον αφορά την επιλογή ενός διακομιστή VNC και ενός περιβάλλοντος εργασίας. Σε αυτό το σεμινάριο, θα εγκαταστήσουμε τα πιο πρόσφατα πακέτα για το περιβάλλον εργασίας XFCE και το πακέτο TigerVNC που διατίθενται στο επίσημο **αποθετήριο του Ubuntu**. Τόσο το XFCE όσο και το TigerVNC απαιτούν λίγους πόρους και προσφέρουν γρήγορη απόδοση. Ως αποτέλεσμα, η σύνδεση VNC παραμένει ομαλή και σταθερή ακόμη και με πιο αργές συνδέσεις στο διαδίκτυο.

### Βήμα 1: Ενημέρωση πακέτων

Πριν ξεκινήσετε την εγκατάσταση, βεβαιωθείτε ότι το σύστημά σας είναι ενημερωμένο. Εκτελέστε τις ακόλουθες εντολές για να εγκαταστήσετε όλες τις διαθέσιμες ενημερώσεις:

```bash
sudo apt update
sudo apt upgrade
```

### Βήμα 2: Εγκατάσταση του περιβάλλοντος εργασίας

Ο διακομιστής VNC απαιτεί ένα περιβάλλον επιφάνειας εργασίας, καθώς παρέχει την επιφάνεια εργασίας μέσω του δικτύου. Το Ubuntu 22.04 διαθέτει το GNOME ως προεπιλογή, αλλά μπορείτε επίσης να εγκαταστήσετε άλλα περιβάλλοντα επιφάνειας εργασίας, όπως το XFCE, το οποίο είναι ιδιαίτερα ελαφρύ.

```bash
sudo apt install xfce4 xfce4-goodies
```

Το πακέτο `xfce4-goodies` περιλαμβάνει επιπλέον χρήσιμα εργαλεία και προσθήκες για το XFCE.

### Βήμα 3: Δημιουργία νέου χρήστη

Αφού εγκαταστήσετε το περιβάλλον εργασίας, πρέπει να δημιουργήσετε έναν νέο χρήστη για τη λειτουργία του διακομιστή VNC. Για λόγους ασφαλείας, συνιστάται να μην το κάνετε αυτό ως **χρήστης root**. Στην περίπτωση αυτή, θα δημιουργήσουμε έναν νέο χρήστη με το όνομα «john» και θα του παραχωρήσουμε τα απαραίτητα δικαιώματα για την εκτέλεση του διακομιστή VNC μέσω αυτού του λογαριασμού χρήστη.

Πρώτα, πρέπει να δημιουργήσετε τον χρήστη «john» και να του ορίσετε έναν κωδικό πρόσβασης. Μπορείτε να το κάνετε αυτό με τις ακόλουθες εντολές:

```bash
sudo useradd -m -s /bin/bash john
sudo passwd john
```

Η εντολή `sudo useradd -m -s /bin/bash john` δημιουργεί έναν νέο χρήστη με το όνομα «john» και ρυθμίζει έναν κατάλογο αρχικής σελίδας, ορίζοντας το προεπιλεγμένο shell στο `/bin/bash`. Στη συνέχεια, χρησιμοποιήστε `sudo passwd john` για να ορίσετε έναν κωδικό πρόσβασης για αυτόν τον χρήστη. Είναι απαραίτητο να επιλέξετε έναν ασφαλή κωδικό πρόσβασης.

Αφού δημιουργηθεί ο χρήστης, πρέπει να τον προσθέσετε στην ομάδα sudo, ώστε να μπορεί να εκτελεί εντολές διαχειριστή. Αυτό γίνεται με την ακόλουθη εντολή:

```bash
sudo usermod -aG sudo john
```

Αυτή η εντολή επιτρέπει στον «john» να εκτελεί εντολές με διευρυμένα δικαιώματα που παρέχονται μέσω του sudo.

Για να ελέγξετε αν ο χρήστης «john» διαθέτει τα σωστά δικαιώματα, συνδεθείτε ως «john» και ελέγξτε τα δικαιώματα root. Για να το κάνετε αυτό, εκτελέστε τις παρακάτω εντολές:

```bash
su - john
sudo su
```

Πληκτρολογώντας `su - john`, μεταβαίνετε στον χρήστη «john», ενώ πληκτρολογώντας `sudo su` αποκτάτε δικαιώματα root, υπό την προϋπόθεση ότι ο κωδικός πρόσβασης έχει εισαχθεί σωστά. Εάν η πιστοποίηση είναι επιτυχής, θα εμφανιστεί μια ένδειξη όπως το `root@hostname`, η οποία επιβεβαιώνει ότι διαθέτετε δικαιώματα root.

### Βήμα 4: Εγκατάσταση του λογισμικού διακομιστή VNC

Για αυτό το σεμινάριο, θα χρησιμοποιήσουμε **το TigerVNC**, καθώς αποτελεί μια ευρέως διαδεδομένη και καλά υποστηριζόμενη επιλογή διακομιστή VNC. Εγκαταστήστε το TigerVNC με την παρακάτω εντολή:

```bash
sudo apt install tigervnc-standalone-server tigervnc-common tigervnc-tools
```

Αυτή η εγκατάσταση περιλαμβάνει το λογισμικό διακομιστή VNC καθώς και ορισμένα απαραίτητα πακέτα που απαιτούνται για τη λειτουργία του.

### Βήμα 5: Δημιουργία της παρουσίας του διακομιστή VNC

Πριν ξεκινήσετε τον διακομιστή VNC, πρέπει να ορίσετε έναν κωδικό πρόσβασης που απαιτείται για την πρόσβαση στον διακομιστή VNC. Πληκτρολογήστε την ακόλουθη εντολή στο τερματικό:

```bash
vncserver
```

Θα σας ζητηθεί να εισαγάγετε και να επιβεβαιώσετε έναν κωδικό πρόσβασης. Αυτός ο κωδικός προστατεύει την πρόσβαση στον διακομιστή VNC σας. Μπορείτε επίσης να επιλέξετε μια ρύθμιση για να ορίσετε έναν κωδικό πρόσβασης μόνο για προβολή, αν θέλετε οι άλλοι χρήστες να βλέπουν μόνο την οθόνη χωρίς να έχουν δικαιώματα ελέγχου.

Όταν ο διακομιστής ξεκινά για πρώτη φορά, δημιουργείται μια νέα οθόνη, συνήθως `:1`. Η έξοδος εμφανίζει τον ακριβή αριθμό της οθόνης που μπορείτε να χρησιμοποιήσετε.

Ακολουθεί ένα παράδειγμα:

```bash
New 'X' desktop is your-machine-name:1
```

Σημειώστε τον αριθμό της οθόνης (στην περίπτωση αυτή `:1`), καθώς θα τον χρειαστείτε για να συνδεθείτε στον πελάτη VNC.

### Βήμα 6: Ρύθμιση παραμέτρων της παρουσίας του διακομιστή VNC

Δημιουργήστε ένα αρχείο ρυθμίσεων για τον διακομιστή VNC, ώστε να διασφαλίσετε ότι το XFCE θα φορτώνεται κατά την εκκίνηση του διακομιστή VNC. Το αρχείο `~/.vnc/xstartup` μπορεί, για παράδειγμα, να έχει το ακόλουθο περιεχόμενο:

```bash
#!/bin/sh
# Start up the standard system desktop
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
/usr/bin/startxfce4
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
x-window-manager &
```

Το αρχείο γίνεται εκτελέσιμο όταν χρησιμοποιείτε αυτήν την εντολή:

```bash
chmod +x ~/.vnc/xstartup
```

### Βήμα 7: Εκτέλεση του διακομιστή VNC ως υπηρεσία συστήματος

Ρυθμίζοντας τον διακομιστή VNC ως υπηρεσία Systemd, μπορείτε να τον εκκινήσετε, να τον σταματήσετε και να τον επανεκκινήσετε όπως οποιαδήποτε άλλη υπηρεσία. Μπορείτε επίσης να χρησιμοποιήσετε εντολές Systemd για να εκκινήσετε τον διακομιστή VNC αυτόματα κατά την εκκίνηση του συστήματος.

Πρώτα, δημιουργήστε ένα νέο αρχείο με ένα πρόγραμμα επεξεργασίας κειμένου της επιλογής σας:

```bash
nano /etc/systemd/system/vncserver@.service
```

Προσθέστε το ακόλουθο περιεχόμενο στο αρχείο:

```bash
[Unit]
Description=Start TigerVNC server at startup
After=syslog.target network.target
[Service]
Type=forking
User=<your-username>
PAMName=login
PIDFile=/home/<your-username>/.vnc/%H:%i.pid
ExecStart=/usr/bin/vncserver %i
ExecStop=/usr/bin/vncserver -kill %i
[Install]
WantedBy=multi-user.target
```

Αντικαταστήστε `<your-username>` με το πραγματικό σας όνομα χρήστη. Φορτώστε το νέο αρχείο υπηρεσίας και ενεργοποιήστε την υπηρεσία:

```bash
sudo systemctl daemon-reload
sudo systemctl enable vncserver@1.service
sudo systemctl start vncserver@:1
```

Η εντολή `sudo systemctl enable vncserver@1.service` ενεργοποιεί την υπηρεσία διακομιστή VNC για την οθόνη `:1`, έτσι ώστε να ξεκινά αυτόματα την επόμενη φορά που θα εκκινηθεί το σύστημα. Για το σκοπό αυτό χρησιμοποιείται το αρχείο υπηρεσίας systemd `vncserver@.service`, στο οποίο `%i` αντικαθίσταται από `1`. Αυτό επιτρέπει τη ρύθμιση του διακομιστή VNC για την οθόνη `:1` και διασφαλίζει ότι θα ξεκινά κάθε φορά που εκκινείται το σύστημα. Η εντολή δημιουργεί τις απαραίτητες συντομεύσεις για να συμπεριληφθεί η υπηρεσία στη σωστή διαδικασία εκκίνησης.

### Βήμα 8: Ρύθμιση του τείχους προστασίας

Εάν έχετε ενεργοποιήσει ένα τείχος προστασίας στον διακομιστή σας Ubuntu, πρέπει να ανοίξετε τη θύρα VNC για να επιτρέψετε τις απομακρυσμένες συνδέσεις. Από προεπιλογή, ο διακομιστής VNC χρησιμοποιεί τη θύρα 5900, ακολουθούμενη από τον αριθμό της οθόνης. Έτσι, για την οθόνη `:1`, η θύρα είναι η 5901.

Άνοιξε τη θύρα `ufw`:

```bash
sudo ufw allow 5901/tcp
```

Ελέγξτε τους κανόνες του τείχους προστασίας για να βεβαιωθείτε ότι η θύρα είναι ανοιχτή:

```bash
sudo ufw status
```

Ακολουθεί ένα παράδειγμα πιθανής εξόδου:

```bash
Status: active
To                              Action        From
--                                ------            ----
22/tcp                    	ALLOW       Anywhere
80/tcp                  	ALLOW       Anywhere
443/tcp                  	ALLOW       Anywhere
5901/tcp                	ALLOW       Anywhere
22/tcp (v6)             	ALLOW       Anywhere (v6)
80/tcp (v6)             	ALLOW       Anywhere (v6)
443/tcp (v6)           		ALLOW       Anywhere (v6)
5901/tcp (v6)         		ALLOW       Anywhere (v6)
```

### Βήμα 9: Σύνδεση με τον διακομιστή VNC

Για να συνδεθείτε με τον διακομιστή VNC, χρειάζεστε ένα πρόγραμμα-πελάτη VNC στον τοπικό σας υπολογιστή. Δημοφιλή προγράμματα-πελάτες VNC είναι **τα RealVNC, TigerVNC Viewer και TightVNC Viewer**. Για να ενισχύσετε την ασφάλεια της σύνδεσής σας μέσω VNC, θα πρέπει να εξετάσετε το ενδεχόμενο χρήσης κρυπτογραφημένης σύνδεσης μέσω SSH. Αυτό προστατεύει την επικοινωνία μεταξύ του προγράμματος-πελάτη VNC και του διακομιστή.

Συνδέσου στον διακομιστή σου μέσω SSH και προώθησε τη θύρα VNC:

```bash
ssh -L 59000:localhost:5901 -C -N -l <your-username>@<server-ip>
```

- `ssh`: Η εντολή για την ασφαλή σύνδεση με έναν απομακρυσμένο διακομιστή μέσω του πρωτοκόλλου SSH, το οποίο μεταδίδει δεδομένα σε κρυπτογραφημένη μορφή.
- `-L 59000:localhost:5901`: Ενεργοποιεί την τοπική προώθηση θύρας. Η κίνηση από τη θύρα 59000 στον τοπικό υπολογιστή σας προωθείται μέσω της σήραγγας SSH στη θύρα 5901 στον απομακρυσμένο διακομιστή. `localhost` αναφέρεται στον απομακρυσμένο διακομιστή στον οποίο εκτελείται ο διακομιστής VNC.
- `C`: Ενεργοποιεί τη συμπίεση της κυκλοφορίας δεδομένων. Αυτό μπορεί να βελτιώσει την ταχύτητα μετάδοσης και να μειώσει τη χρήση του εύρους ζώνης, ειδικά σε περιπτώσεις αργών συνδέσεων.
- `N`: Αποτρέπει την εκτέλεση εντολών στον απομακρυσμένο διακομιστή. Αυτή η λειτουργία είναι χρήσιμη αν θέλετε μόνο να ρυθμίσετε τη σήραγγα χωρίς να ξεκινήσετε ένα shell στον απομακρυσμένο διακομιστή.
- `-l <your-username>`: Καθορίζει το όνομα χρήστη με το οποίο συνδέεστε στον απομακρυσμένο διακομιστή.
- `<server-ip>`: Η διεύθυνση IP ή το όνομα του κεντρικού υπολογιστή του απομακρυσμένου διακομιστή στον οποίο θέλετε να συνδεθείτε μέσω SSH.

Note Αντικαταστήστε `<your-username>` με το όνομα χρήστη σας και `<server-ip>` με τη διεύθυνση IP του διακομιστή σας.

Συνδεθείτε στην τοπική θύρα 5901 που έχετε προωθήσει μέσω της σήραγγας SSH, πληκτρολογώντας `localhost:5901` στο πρόγραμμα προβολής VNC.

Αυτή η μέθοδος εξασφαλίζει ότι η σύνδεσή σας μέσω VNC πραγματοποιείται μέσω κρυπτογραφημένης σύνδεσης SSH και, ως εκ τούτου, είναι πιο ασφαλής.

### Βήμα 10: Διαχείριση του διακομιστή VNC

Για να σταματήσετε ή να επανεκκινήσετε τον διακομιστή VNC, χρησιμοποιήστε τις ακόλουθες εντολές:

**Διακοπή διακομιστή VNC:**

```bash
vncserver -kill :1
```

**Επανεκκίνηση του διακομιστή VNC:**

```bash
vncserver :1
```

**Έξοδος από τον διακομιστή VNC (με το systemd):**

```bash
sudo systemctl stop vncserver@:1
```

**Έλεγχος κατάστασης:**

```bash
sudo systemctl status vncserver@1
```

Ένα πιθανό αποτέλεσμα θα μπορούσε να είναι:

```bash
vncserver@1.service - Start TigerVNC server at startup
      Loaded: loaded (/etc/systemd/system/vncserver@.service; enabled; vendor preset: enabled)
      Active: active (running) since Mon 2024-07-29 16:57:26 UTC; 20s ago
     Process: 97088 ExecStartPre=/usr/bin/vncserver -kill :1 > /dev/null 2>&1 (code=exited, status=2)
     Process: 97092 ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 -localhost :1 (code=exited, status=0/SUCCESS)
    Main PID: 97103 (Xtigervnc)
        Tasks: 77 (limit: 4665)
      Memory: 146.7M
          CPU: 4.459s
      CGroup: /system.slice/system-vncserver.slice/vncserver@1.service
. . .
```

### Βήμα 11: Αντιμετώπιση προβλημάτων

Εάν αντιμετωπίσετε προβλήματα, ελέγξτε τα εξής:

- **Αρχεία καταγραφής:** Τα αρχεία καταγραφής του διακομιστή VNC βρίσκονται στο `~/.vnc`. Ελέγξτε αυτά τα αρχεία για μηνύματα σφάλματος που ενδέχεται να υποδηλώνουν πιθανά προβλήματα.
- **Σύνδεση δικτύου:** Βεβαιωθείτε ότι δεν υπάρχουν περιορισμοί δικτύου ή τείχη προστασίας που να εμποδίζουν την πρόσβαση στη θύρα VNC.
- **Αρχεία διαμόρφωσης:** Βεβαιωθείτε ότι δεν υπάρχουν σφάλματα στη διαμόρφωση του περιβάλλοντος επιφάνειας εργασίας στο αρχείο `~/.vnc/xstartup`.

Τώρα έχετε τη δυνατότητα να διαχειρίζεστε εύκολα τα αρχεία και τα προγράμματά σας, καθώς και τις ρυθμίσεις του συστήματός σας, μέσω ενός διακομιστή VNC. Αν προτιμάτε να χρησιμοποιείτε τα Windows, σας προτείνουμε το σεμινάριό μας[«Εγκατάσταση διακομιστή VNC στα Windows](https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diakomistis-vnc-gia-windows/)».


This is a markdown version of: [https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diakomistis-vnc-ubuntu-2204/](https://www.ionos.com/el-gr/digitalguide/diakomistis/rythmiseis/diakomistis-vnc-ubuntu-2204/) for AI/LLM consumption.