Kako namestiti polnopravni VDI v Ubuntu Linuxu in ThinLinc: alternativa Terminal Serverju Windows
Uvod
Če iščete način za vzpostavitev oddaljenega namizja za svoje zaposlene in potrebujete alternativo RDP v Linuxu, je ThinLinc ena od najbolj stabilnih rešitev za vzpostavitev infrastrukture VDI.
ThinLinc je profesionalna rešitev za organizacijo terminalskih strežnikov z operacijskim sistemom Linux švedskega podjetja Cendio, ki že od leta 1992 razvija rešitve za terminalske strežnike. Za razliko od standardnega VNC omogoča hitro upodabljanje grafike, popolno podporo zvoku in posredovanje lokalnih virov (tiskalniki, pametne kartice, mape).
Ključne funkcije licenciranja:
- Brezplačna različica: Popolnoma funkcionalna in za vedno brezplačna za največ 10 sočasnih uporabnikov. Idealna za mala podjetja ali osebno uporabo.
- Enotna funkcionalnost: V primerjavi s plačljivo različico brezplačna različica nima nobenih omejitev glede zmogljivosti.
- Podpora LDAP: Uporabljajte uporabnike Active Directory za prijavo v terminalski strežnik
- Hkratne licence: Licencirani niso uporabniki, ustvarjeni v sistemu, temveč sočasne seje.
Primer: Če imate ustvarjenih 50 uporabnikov, vendar jih hkrati dela le 10, vam zadostuje brezplačna različica.
Tehnični sklop tega vodnika
Vsi ukrepi, opisani v tem priročniku, so bili potrjeni z uporabo naslednje programske in strojne opreme:
Komponente |
Različica / specifikacija |
operacijski sistem |
Ubuntu Server 24.04.3 LTS (Noble Numbat) |
Grafična lupina |
KDE Plasmashell 5.27.12 (paket kde-standard) |
Terminalski strežnik |
Cendio ThinLinc v4.20.0 |
Virtualni stroj |
4-jedrni procesor, 8 GB RAM, NVMe SSD |
Uporabnik |
Standardni uporabnik v skupini sudo |
Korak 1: Priprava in posodobitev sistema
Ustvarite standardnega uporabnika in ga dodajte v skupino sudo, če v sistemu še ne obstaja:
Sudo adduser USERNAME
USERNAME zamenjajte s svojim uporabniškim imenom.
Dodajanje uporabnika v skupino sudo:
sudo usermod -aG sudo USERNAME
Zamenjajte USERNAME s svojim uporabniškim imenom.
Posodobitev sistema:
Sudo apt update && sudo apt upgrade -y
Namestitev in omogočanje tiskalniškega sistema CUPS:
sudo apt install cups ghostscript -y sudo systemctl enable --now cups
Korak 2: Namestitev namiznega okolja KDE
sudo apt install kde-standard -y
Če želite celoten nabor aplikacij (igre, pisarna itd.), uporabite kde-full, za strežnik pa običajno zadostuje kde-standard.
Če se med namestitvijo prikaže modro okno z zahtevo po izbiri upravitelja zaslona, izberite sddm (lasten KDE).
Ponovni zagon: Po namestitvi vseh paketov je najbolje ponovno zagnati računalnik, da se zagotovita pravilen zagon strežnika X in lupine.
sudo reboot now
Korak 3: Pridobite povezavo do namestitvenega paketa
Pojdite na spletno mesto Cendio we bsite -> zavihek Download -> For administrators -> Download ThinLinc server software -> Izpolnite obrazec, da prejmete povezavo

V oknu, ki se odpre, z desnim gumbom miške kliknite Download server software (Prenesi strežniško programsko opremo), da dobite povezavo do najnovejše različice programa ThinLinc. Za kasnejšo namestitev jo lahko shranite v beležko.
.jpg)
Korak 4: Prenesite ThinLinc
Program ThinLinc se ne distribuira prek standardnih skladišč Ubuntuja, zato ga prenesite z uradnega spletnega mesta Cendio z uporabo povezave, ki ste jo shranili prej:
wget https://www.cendio.com/downloads/server/tl-4.20.0-server.zip
Povezavo zamenjajte s tisto, ki ste jo dobili v koraku #3.
Korak 5: Razpakirajte arhiv in pojdite v mapo z razpakiranimi datotekami
sudo apt install unzip -y unzip tl-4.20.0-server.zip cd tl-4.20.0-server
kjer je tl-4.20.0-server-ime arhiva, ki ste ga prenesli
Korak 6: Namestitev strežnika ThinLinc
Zagon namestitvenega programa:ThinLinc je opremljen s priročno namestitveno skripto, ki bo samodejno vključila potrebne odvisnosti.
sudo ./install-server
Namestitveni program bo na določenih mestih zahteval vnos podatkov, na primer "Press Enter to continue" (Za nadaljevanje pritisnite Enter) ali potrditev določenih možnosti.
Program za konfiguracijo strežnika ThinLinc
Po namestitvi programa ThinLinc bo takoj sledil pripomoček za nastavitev strežnika. Priporočljivo je, da nadaljujete z namestitvijo.
Med namestitvijo boste morali namestiti manjkajoče pakete in potrditi nastavitve:
- Zaženite namestitev ThinLinc zdaj [Da/ne]? Da
- Vrsta strežnika [Master/agent]? Master
- Samodejno namestiti potrebne pakete [Da/ne]? Da
- Ali želite nadaljevati z namestitvijo [Da/ne]? Da
Namestite komponente LDAP, da se boste lahko v sistem prijavili z računom znotraj AD.
Samodejno namestiti potrebne pakete [Da/ne]? Da
Določite, kaj naj se uporablja za zunanji dostop:
Naslov za zunanji dostop, ki naj se uporabi [ip/naslov gostitelja/ročno]? ip
Vnesite e-poštni naslov skrbnika sistema:
Elektronski naslov skrbnika []? Navedite svoj kontaktni e-poštni naslov.
ThinLink ponuja spletni vmesnik za upravljanje terminalskega strežnika. Kasneje ga lahko onemogočite. Vendar za zdaj vnesite močno geslo:
Geslo za spletno upravljanje? VAŠE_ZANESLJIVO_GESLO
Priporoča se namestitev konfiguracije AppArmor:
Namestitev konfiguracije AppArmor [Da/ne]? Da
Po končani namestitvi in konfiguraciji boste prejeli sporočilo, ki potrjuje uspešno namestitev.
Korak 7: Dodajanje poti do sudo
Če želite zagotoviti, da sistem vedno najde ukaze ThinLinc, morate urediti datoteko visudo
sudo visudo
in nadomestite vrednost v vrstici "Defaults secure_path=" z
"/sbin:/bin:/usr/sbin:/usr/bin:/opt/thinlinc/bin:/opt/thinlinc/sbin"
Korak 8: Preverjanje in konfiguriranje vrat za dostop
ThinLinc deluje prek SSH (vrata 22) za primarni promet in uporablja vrata 1010 (spletni upravljalni vmesnik) in 300 (spletni odjemalec).
Če imate omogočen ufw, dovolite dostop:
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 zmogljivosti grafičnega vmesnika za oddaljeni dostop
Ukaz, ki bo ustvaril globalno konfiguracijsko datoteko in vsem uporabnikom onemogočil sestavljanje in animacije ter tako izboljšal odzivnost oddaljenega namizja.
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: Povezava
Z oddaljenim namizjem se lahko povežete na dva načina: prek izvornega odjemalca ThinLinc ali neposredno v brskalniku https://YOUR_SERVER_IP:300.
Odjemalec lahko prenesete s strani Cendio -> Prenos -> Za uporabnike.
.jpg)
Kot lahko vidite, je odjemalec zelo podoben odjemalcu MS RDP. Nastavitve omogočajo konfiguracijo posredovanja naprav in skupne odložišča. Nastavitve kakovosti prikaza oddaljenega namizja so prav tako precej napredne.
Korak 11 (neobvezno) Onemogočanje dostopa do strežnika prek spletnega brskalnika
Ker dostop z brskalnikom ustvarja dodatne vektorje napadov, je najbolje, da onemogočite dostop do spletne upraviteljske plošče na vratih 1010 in dostop do spletnega odjemalca za oddaljeno namizje.
To lahko storite tako, da onemogočite ustrezne storitve + zaprete vrata v požarnem zidu.
Onemogočanje storitev:
# Ustavimo spletni odjemalec in upraviteljsko ploščo sudo systemctl stop tlwebclient tlwebadm # Prepovemo njun samodejni zagon sudo systemctl disable tlwebclient tlwebadm
Prepovemo dostop do vrat 300:
sudo ufw deny 300/tcp sudo ufw reload
Ne pozabite, da ThinLinc uporablja SSH kot transport. To pomeni, da vsi varnostni mehanizmi SSH samodejno zaščitijo vaše grafično namizje.
Morebitne težave in priporočila za strojno opremo
Tudi ob pravilni namestitvi se lahko pojavijo nekatere posebnosti, značilne za oddaljena namizja.
Težava št. 1: V brskalniku ni zvoka ali pa se video zaostaja
Razlog: Nekaj težav z brskalnikom in brskalnikom v brskalniku: Ubuntu 24.04 brskalnike (Firefox, Chromium) privzeto namesti v obliki Snap. Ti paketi se izvajajo v izoliranem peskovniku, ki:
- Ne vidi navideznih zvočnih kanalov ThinLinc.
- Počasnejše upodabljanje uporabniškega vmesnika zaradi plasti kontejnerizacije.
Primer namestitve Google Chrome iz paketa .deb:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb sudo apt install ./google-chrome-stable_current_amd64.deb
Za pravilen zvok in gladko grafiko vedno namestite brskalnike iz paketov .deb ali uradnih repozitorijev. Izogibajte se različicam Snap za terminalske strežnike.
Težava št. 2: drobljenje slike ali zamik
Razlog: V primeru, da je v računalniku prikazana težava, ki jo je treba odpraviti, se pojavijo težave s slikanjem: Vzrok: šibka internetna povezava ali premalo procesorskih virov za stiskanje video toka.
- Rešitev: V primeru, da je vgrajena večja količina podatkov, je treba uporabiti naslednje možnosti: 1: Prepričajte se, da je v nastavitvah odjemalca ThinLinc omogočena optimizacija (prilagodljivo stiskanje).
- Rešitev: Vklopite možnost za prenos podatkov: Prepričajte se, da uporabljate sejo KDE Plasma (X11) in ne Wayland.
Priporočene sistemske zahteve
Za zagotovitev resnično udobne izkušnje pri delu s KDE prek ThinLinc (brez zastoja zvoka ali zamrzovanja pri odpiranju zavihkov brskalnika) priporočamo naslednje specifikacije VPS:
Parameter |
Minimalna |
Priporočena (1 uporabnik) |
Procesor (CPU) |
2 virtualni jedri |
4 virtualna jedra |
Pomnilnik (RAM) |
4 GB |
4 GB + |
Disk (shramba) |
40 GB SSD |
40 GB SSD / NVMe |
OPERACIJSKI SISTEM |
Ubuntu 24.04 |
Ubuntu 24.04 |
Tudi z minimalno konfiguracijo bo namenski strežnik zagotavljal bistveno večjo zmogljivost VDI. Če načrtujete uporabo terminalskega strežnika kot dela poslovne infrastrukture, je najbolje razmisliti o namenskih virih, da zagotovite stabilno delovanje večuporabniškega sistema.
ThinLinc lahko grafični procesor uporablja tudi za obdelavo 3D grafike z uporabo VirtualGL. Za to je treba namestiti lastniške gonilnike GPU in zagnati ukaz vglrun za zagon aplikacij, ki zahtevajo obdelavo na GPU.
Če nameravate svoje VPS uporabljati za več uporabnikov hkrati, dodajte 2 GB pomnilnika RAM in 1 jedro vCPU za vsakega dodatnega aktivnega uporabnika.