Kako implementirati potpuno funkcionalan VDI na Ubuntu Linuxu i ThinLincu: alternativu Windows Terminal Serveru
Uvod
Ako tražite način da postavite udaljenu radnu površinu za svoje zaposlenike i trebate alternativu RDP-u na Linuxu, ThinLinc je jedno od najednostavnijih rješenja za izgradnju VDI infrastrukture.
ThinLinc je profesionalno rješenje za organizaciju Linux-baziranih terminalnih servera švedske kompanije Cendio, koja razvija rješenja za terminalne servere od 1992. godine. Za razliku od standardnog VNC-a, pruža brzo prikazivanje grafike, potpunu podršku zvuka i proslijeđivanje lokalnih resursa (pisači, pametne kartice, mape).
Ključne karakteristike licenciranja:
- Besplatna verzija: Potpuno funkcionalna i besplatna zauvijek za do 10 istovremenih korisnika. Idealna za mala poduzeća ili osobnu upotrebu.
- Objedinjena funkcionalnost: Besplatna verzija nema ograničenja u smislu mogućnosti u odnosu na plaćenu verziju.
- LDAP podrška: Koristite Active Directory korisnike za prijavu na terminalni server
- Istovremene licence: Ne licenciraju se korisnici kreirani u sustavu, već istovremene sesije.
Primjer: Možda imate 50 kreiranih korisnika, ali ako samo 10 radi istovremeno, besplatna verzija je dovoljna za vas.
Tehnički stack ovog vodiča
Sve radnje opisane u ovom priručniku validirane su korištenjem sljedećeg softvera/hardvera stacka:
|
Komponenta |
Verzija / Specifikacija |
|
Operativni sustav |
Ubuntu Server 24.04.3 LTS (Noble Numbat) |
|
Grafička ljuska |
KDE Plasmashell 5.27.12 (kde-standard paket) |
|
Terminalni server |
Cendio ThinLinc v4.20.0 |
|
Virtualna mašina |
4 jezgre CPU, 8 GB RAM, NVMe SSD |
|
Korisnik |
Standardan korisnik u sudo grupi |
Korak 1: Priprema i ažuriranje sustava
Kreirajte standardnog korisnika i dodajte ga u sudo grupu ako već ne postoji u sustavu:
sudo adduser USERNAME
Zamijenite USERNAME sa vašim korisničkim imenom.
Dodavanje korisnika u sudo grupu:
sudo usermod -aG sudo USERNAME
Zamijenite USERNAME sa vašim korisničkim imenom.
Ažuriranje sustava:
sudo apt update && sudo apt upgrade -y
Instalacija i omogućavanje CUPS sustava ispisa:
sudo apt install cups ghostscript -y sudo systemctl enable --now cups
Korak 2: Instalacija KDE okruženja za rad
sudo apt install kde-standard -y
Ako želite kompletan skup aplikacija (igre, ured, itd.), koristite kde-full, ali za server, kde-standard je obično dovoljan.
Ako se tijekom instalacije pojavi plavi prozor tražeći da odaberete upravljač prikazima, odaberite sddm (ugrađen u KDE).
Ponovno pokretanje: Nakon instalacije svih paketa, preporučuje se ponovno pokretanje kako bi se osiguralo ispravno pokretanje X servera i ljuske.
sudo reboot now
Korak 3: Dobivanje veze instalacijskog paketa
Idite na Cendio web stranicu → Preuzimanja → Za administratore → Preuzimanje ThinLinc server softvera → Ispunite obrazac da dobijete vezu

U prozoru koji se otvori, desnom tipkom miša kliknite na "Preuzmi server softver" kako biste dobili vezu na najnoviju verziju ThinLinc-a. Možete je spremiti u Notepad za kasniju instalaciju.
.jpg)
Korak 4: Preuzimanje ThinLinc-a
ThinLinc se ne distribuira kroz standardne Ubuntu repozitorije, pa ga preuzimite s službene Cendio web stranice koristeći vezu koju ste spremili ranije:
wget https://www.cendio.com/downloads/server/tl-4.20.0-server.zip
Zamijenite vezu s onom koju ste dobili u koraku #3.
Korak 5: Raspakuj arhiv i idi u mapu s raspakovanim datotekama
sudo apt install unzip -y unzip tl-4.20.0-server.zip cd tl-4.20.0-server
Gdje je tl-4.20.0-server naziv arhive koju ste preuzeli
Korak 6: Instalacija ThinLinc servera
Pokretanje instalatora: ThinLinc dolazi s prikladnom instalacijskom skriptom koja će automatski preuzeti potrebne ovisnosti.
sudo ./install-server
Instalator će tražiti unos u određenim točkama, na primjer, da pritisnete "Enter za nastavak" ili da potvrdite specifične opcije.
Utilita za konfiguraciju ThinLinc servera
Nakon instalacije ThinLinc-a, odmah će uslijediti utilita za postavljanje servera. Preporučuje se nastaviti s postavljanjem.
Tijekom postavljanja, trebali biste biti potraženi da instalirate nedostajuće pakete i potvrdite vašu konfiguraciju:
- Pokreni ThinLinc postavljanje sada [Yes/no]? Yes
- Tip servera [Master/agent]? Master
- Automatski instaliraj potrebne pakete [Yes/no]? Yes
- Želiš li nastaviti s instalacijom [Yes/no]? Yes
Instalirajte LDAP komponente kako biste se mogli prijaviti u sustav koristeći račun unutar AD-a.
Automatski instaliraj potrebne pakete [Yes/no]? Yes
Specificirajte što bi trebalo koristiti za vanjski pristup:
Vanjski dostupna adresa za korištenje [ip/hostname/manual]? ip
Molimo unesite email adresu sistemskog administratora:
Administrator email []? Molimo navedite vašu kontakt email adresu.
ThinLinc nudi web sučelje za administriranje terminalnog servera. Kasnije ga možete onemogućiti. Međutim, za sada, molimo unesite jaku lozinku:
Lozinka web administracije? VAŠA_POUZDANA_LOZINKA
Instalacija AppArmor konfiguracije je preporučena:
Instaliraj AppArmor konfiguraciju [Yes/no]? Yes
Nakon što je instalacija i konfiguracija dovršena, dobit ćete poruku koja potvrđuje uspješnu instalaciju.
Korak 7: Dodavanje puta u sudo
Kako bi sustav uvijek pronašao ThinLinc naredbe, trebate urediti datoteku visudo
sudo visudo
i zamijeniti vrijednost u liniji "Defaults secure_path=" s
"/sbin:/bin:/usr/sbin:/usr/bin:/opt/thinlinc/bin:/opt/thinlinc/sbin"
Korak 8: Provjera i konfiguracija portova pristupa
ThinLinc radi kroz SSH (port 22) za primarni promet i koristi portove 1010 (web sučelje administracije) i 300 (web klijent).
Ako imate ufw omogućen, dozvoli pristup:
sudo ufw default deny incoming && \ sudo ufw default allow outgoing && sudo ufw allow 22/tcp && \ sudo ufw allow 300/tcp && \ sudo ufw reload
Korak 9: Optimizacija performansi korisničkog sučelja za udaljeni pristup
Naredba koja će kreirati globalnu datoteku konfiguracije i prisiliti onemogućavanje sastavnog iscrtavanja i animacija za sve korisnike kako bi se poboljšala reagencija udaljene radne površine.
sudo cp /etc/xdg/kwinrc /etc/xdg/kwinrc.backup 2>/dev/null ||true sudo bash -c 'cat > /etc/xdg/kwinrc << EOF [Compositing] Enabled=false OpenGLIsUnsafe=true [Plugins] blurEnabled=false contrastEnabled=false kwin4_effect_translucencyEnabled=false slideEnabled=false zoomEnabled=false [Windows] ElectricBorderDelay=0 ElectricBorderCooldown=0 [Effect-PresentWindows] BorderActivate=9 [KWin] AnimationDurationFactor=0 EOF'
Korak 10: Povezivanje
Možete se povezati na udaljenu radnu površinu na dva načina: putem nativnog ThinLinc klijenta ili izravno u pregledniku https://VAŠA_IP_SERVERA:300
Klijent se može preuzeti sa Cendio → Preuzimanja → Za korisnike stranice.
.jpg)
Kao što vidite, klijent je vrlo sličan MS RDP klijentu. Postavke vam omogućavaju konfiguriranje proslijeđivanja uređaja i zajedničke memorije. Postavke kvalitete prikaza udaljene radne površine su također sasvim napredne.
Korak 11 (Opciono) Onemogućavanje pristupa serveru putem web preglednika
Budući da pristup preko preglednika stvara dodatne vektore napada, najbolje je onemogućiti pristup web admin panelu na portu 1010 i pristup klijentskoj aplikaciji udaljene radne površine.
To se može učiniti onemogućavanjem relevantnih servisa + zatvaranjem portova u vatrozidu.
Onemogućavanje servisa:
# Zaustavite web klijent i admin panel sudo systemctl stop tlwebclient tlwebadm # Zabranimo njihov automatski start sudo systemctl disable tlwebclient tlwebadm
Zabrana pristupa portu 300:
sudo ufw deny 300/tcp sudo ufw reload
Zapamtite da ThinLinc koristi SSH kao transport. To znači da svi SSH mehanizmi sigurnosti automatski štite vašu grafičku radnu površinu.
Mogući problemi i preporuke za hardver
Čak i s pravilnom instalacijom, mogu postojati neke nijanse specifične za udaljene radne površine.
Problem #1: Nema zvuka ili video zaostaje u pregledniku
Razlog: Ubuntu 24.04 instalira preglednike (Firefox, Chromium) u Snap formatu prema zadanom. Ti paketi se pokreću u izoliranom sandbox-u, što:
- Ne vidi ThinLinc virtualne kanale zvuka.
- Sporije iscrtavanje sučelja zbog slojeva kontejnerizacije.
Primjer instalacije Google Chromea iz .deb paketa:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install ./google-chrome-stable_current_amd64.deb
Za odgovarajući zvuk i glatku grafiku, uvijek instalirajte preglednike iz .deb paketa ili službenih repozitorija. Izbjegavajte Snap verzije za terminalne servere.
Problem #2: Slika se "raspada" ili zaostaje
Razlog: Slab internetski spoj ili nedovoljan procesni resursi za komprimiranje video toka.
- Rješenje: Provjerite je li optimizacija (Adaptive Compression) omogućena u postavkama ThinLinc klijenta.
- Rješenje: Provjerite koristite li KDE Plasma (X11) sesiju, a ne Wayland.
Preporučeni sistemski zahtjevi
Kako bi osigurali stvarno udobno iskustvo pri radu s KDE-om putem ThinLinc-a (bez mucanja zvuka ili zamrzavanja pri otvaranju kartice preglednika), preporučujemo sljedeće VPS specifikacije:
|
Parametar |
Minimalno |
Preporučeno (1 korisnik) |
|
Procesor (CPU) |
2 virtualne jezgre |
4 virtualne jezgre |
|
Memorija (RAM) |
4 GB |
4 GB + |
|
Disk (Pohrana) |
40 GB SSD |
40 GB SSD / NVMe |
|
OS |
Ubuntu 24.04 |
Ubuntu 24.04 |
Čak i s minimalnom konfiguracijom, dedicirani server će pružiti znatno veće VDI performanse. Ako planirate koristiti terminalni server kao dio poslovne infrastrukture, najbolje je razmotriti dedicirane resurse kako bi se osigurala stabilna performansa za sustav s više korisnika.
ThinLinc može također koristiti GPU za obrada 3D grafike korištenjem VirtualGL-a. To zahtijeva instalaciju vlasničkih GPU drajvera i pokretanje vglrun naredbe za pokretanje aplikacija koje zahtijevaju GPU obradu.
Ako planirate koristiti vaš VPS za više korisnika istovremeno, dodajte 2GB RAM-a i 1 vCPU jezgru za svakog dodatnog aktivnog korisnika.