Linux sunucuya uzak masaüstü baglantısı (windows bilgisayardan) 3

Linux sunucuya uzak masaustu baglantisi yaparak serveri yonetmeye yada islerinizi bu sunucu uzerinden yurutmeye ihtiyaciniz olabilir. Windows bilgisayarlarinizdan uzaktaki linux kurulu bir sunucuya masaustu baglantisi kurarak onu yonetmek cok kolay. Bu konuda bir donem calisma yapsamda becerememistim. Simdi sizlere bunu nasil yapacaginizi anlatacagim. Sizleri windows’un esaretinden kurtaracagim ve her aldiginiz vps de windows ‘a ihtiyac kalmayacak. Bir an once linux a gecmenizi tavsiye ederim. Ogrenme asamasinda sorunlar yasayabilirsiniz ancak sistem kaynaklarini en iyi sekilde kullaniyor ve windows kadar sorun olusturmuyor.

Benzer içerikler

Bash kodlamada string için, bos-dolu kontrolu!

[Linux] SSH klasör boyutlarını listeleme (hesaplama)

Başlarken

Oncelikle sunucunuzda GNOME yada KDE masaustu yazilimlarindan birisinin kurulu olmasi gerekli. Ben GNOME yi tavsiye ediyorum ve hala kurulu değilse bu konu size yardımcı olabilir: Centos 8 sunucularda (server) KDE yada GNOME kurulumu (Grafik arayüzü kurulumu), sonrasında aşağıdan devam edelim.

Remote desktop (masaustu baglantisi) icin linux sunucunuzda XRDP acik kaynak ve ucretsiz masaustu baglantisi protokolu programini kullanacagiz. Harika bir uygulama, ayni anda birden fazla kullanici linux’a baglanarak, cakisma olmadan calisma yapabiliyor, en azindan benim testlerim sirasinda problem olusmadi.

Linux dagitimlarinda XRDP hazirda gelmiyor, bu sebeple EPEL deposundan yardim alip ekleyecegiz, kuruluma ordan sonra devam edecegiz.

Başlayalım

Öncelikle Epel Deposu Ekleme – RHEL/CentOS 4/5/6/7/8 konuya giderek epel deposunu gerekli olan uygulamaları kurabilmemiz için yum yada dnf ye dahil edelim.

Sorunsuz sekilde epel deposunu tanımladıktan sonra, siradaki isleme geçelim ve bizi hayata baglayacak olan masaustu baglantisi icin kullanacagimiz XRDP programini kuralim.

XRDP kurulumu (Remote Desktop)

Yum deposundan gerekli olan programlari kuralim

dnf install xrdp tigervnc-server

Sonrasinda sizden onay isteyecek (y) yapip enter dediginizde kurulumu bitirecek.

VNCserver yapılandırması

gerekli uygulamaları kurduktan sonra aşağıdaki komutu çalıştırıp ayar sayfasını açalım. Bu sayfada sunucuya uzak masaüstü bağlantısı izni verilecek kullanıcıları belirteceğiz.

nano /lib/systemd/system/[email protected]

Bu komutu çalıştırdıktan sonra aşağıdaki gibi örnek bir ayar dosyası çıkacak karşınıza:

[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple

# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver_wrapper <USER> %i
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'

[Install]
WantedBy=multi-user.target

Kod içerisinde göreceğiniz: <USER> kısmını root olarak değiştirin, yada hangi kullanıcı ile bağlanmak istiyorsanız onun kullanıcı adınıda kullabilirsiniz.

Kaydedip cikalim. nano kullananlar: ctrl + x sonrasinda y + enter yapsinlar, kaydedip cikar. Farkli bir program kullananlar nasil kaydedilip cikilacagini arastirip ciksinlar.

XRDP ‘yi başlatalım

Sona dogru yaklasiyoruz xrdp yi baslatalim.

systemctl start xrdp

vnc server sifre hatasi (password FAILED) verirse dert etmeyin root bilgileri ile giris yapacagiz.:

Otomatik acilmasi icin kaydedelim (sunucu yeniden baslatilirsa)

Sunucuya restart attiginizda yada kapatip bir sure sonra actiginizda bu programlarin otomatik acilmasini isterseniz ki istiyoruz asagidaki kodlari ssh panelimizden uygulayalim, tek tek tabiki..

systemctl enable xrdp

Yukarıdaki işlemlerden sonra normalde sunucuya windows dan bağlanabilir ve yönetebilirsiniz. Ancak farklı sorunlarla karşılaşırsanız diye konunun altına bir kaç ek seçenek ekledim, bağlantı sorunu yaşayanlar bu çözümlerden hangisine ihtiyacı varsa kullanarak tekrar deneyebilir. Eğer çözümler arasında sorununuzu çözen bir durum olmazsa yorum olarak yazarsanız yardımcı olacağım.

Bağlanalım

Windows bilgisayarinizdan uzak masaustu baglanti programini acalim. Kisa yoldan acmak icin Baslat/calistir kismini acin ve asagidaki komutu yazip enter yapin:

mstsc

 Ornek resim:

windows calistir komutu mstsc

Sonrasinda asagidaki baglanti sayfasi (1) gelecek, IP adresinizi yazarak (baglanti yapilacak sunucunun) giris yapin, sonrasinda da ikinci (2) alandaki gibi bir baglanti ekrani goreceksiniz. Bu kismada sunucuya giris yaptiginiz (root) bilgileriniz ile giris yapacaksiniz.

Lunux sunucuya windows bilgisayardan baglanti

UYARI: burda sifre yazarken dikkat edin, isletim sisteminin klavyesi farkli olabiliyor, bu yuzden sizin klavyenizden yazilanlarda farkli oluyor. 3 sunucu test ettim boyle klavyeyi bir turlu degistiremedim, ins bunuda ogrenince baska bir yazida bahsedecegim..

Hersey dogru ise basarili sekilde giris yapmis olacaksiniz, Ornek arayuzumuz:

wondowdan centos sunucuya masaustu baglanti

Windows sunuculardan linux sunuculara baglanti sagladik ve yonetmeyi basardik :) Ben centos 6 kullandim ornekleri hazirlarken ve test ederken. Herhangi bir sorun yasarsaniz bana ulasamak zor olmasa gerek :)


Karşılaşabileceğiniz sorunlar ve çözümleri:

Süleyman A.: Masaüstü geldikten sonra 1 2 saniye sonra bağlanti kesiliyor:
Cozumu (kendisinden): Gelişmiş seçeneklerde rengi 24bit gerçek renk olarak seçtim düzeldi.

Bağlantı için Port’u aktif etme (port: 3389)

Kurulumdan sonra sunucunuzda eğer güvenlik duvarı varsa bağlantı sağlayacağımız xrdp portunun açık olması gerekiyor. Genellikle 3389 numaralı port kullanılır ancak yinede emin olmak için aşağıdaki komutu ssh terminalinden çalıştıralım:

netstat -antlup | grep xrdp

Aşağıdaki gibi bir çıktı gördüğünüzde xrdp nin hangi portu dinlediğinide anlayabilirsiniz:

tcp 0 0 127.0.0.1:3350 0.0.0.0:* LISTEN 36624/xrdp-sesman
tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN 36625/xrdp

Görebileceğiniz gibi 3389 numaralı portu güvenlik duvarına tanımlamamız gerekiyor, bunun için aşağıdaki komutları sırasıyla çalıştıralım:

firewall-cmd --permanent --zone=public --add-port=3389/tcp
firewall-cmd --reload

Bu işlemlerden sonra güvenlik duvarına xrdp nin portunun açık tutulması gerektiğini belirttik. Eğer kapalı iken bağlanmaya çalışırsak hata ile karşılaşmamız mümkün.

SELinux’u XRDP’ye izin verecek şekilde yapılandırın

Aşağıdaki komutları çalıştırarak bu durumda oluşacak sorunları çözmeye çalışabiliriz:

chcon --type=bin_t /usr/sbin/xrdp
chcon --type=bin_t /usr/sbin/xrdp-sesman

Güncelleme hatasına çözüm

Güncellerken yeterli haklara sahip değilsiniz diye uyarı verirse selinux u kapatarak bu sorunu çözebilirsiniz. bunun için aşağıdaki komutlar işinizi görecektir, sonrasında sunucuya restart atarak ayarları aktif edebilirsiniz ancak öncesinde işe yarayıp yaramadığını kontrol edebilirsiniz:

setenforce 0
sed -i –follow-symlinks ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/sysconfig/selinux

**

Yararlandigim kaynak: 

https://www.broexperts.com/2014/07/how-to-remote-desktop-linux-machine-from-windows-7/

https://www.broexperts.com/how-to-remote-desktop-linux-machine-from-windows-7/

https://www.broexperts.com/how-to-remote-desktop-from-windows-to-linux-centos7/

https://www.linuxtechi.com/install-configure-vnc-server-centos8-rhel8/

Yorumlar yükleniyor...