Kali Linux masaüstünü tarayıcıdan kullanmak için iki resmî yol vardır: hafif noVNC ile mevcut masaüstünüzü x11vnc üzerinden HTML5 olarak açmak ya da kullanıcı girişi ve birden çok protokol destekleyen Apache Guacamole kurmak. Kali belgelerinin ikisinde de ortak öneri aynıdır: VNC servisini yalnızca yerel adreste (loopback) dinletin ve uzaktan erişimi SSH tüneliyle yapın.
Tarayıcı gerekmiyorsa Xfce ile RDP kurup herhangi bir uzak masaüstü istemcisiyle bağlanmak da mümkündür; bu yöntem özellikle WSL, Docker ve bulut makinelerinde kullanılır. Bu yazıda üç yöntemi, her birinin hangi portları açtığını ve bu servisleri internete açmamak için neler yapmanız gerektiğini anlatıyoruz.
Hangi yöntemi seçmeli?

| Yöntem | Güçlü yanı | Dikkat |
|---|---|---|
| noVNC + x11vnc | Az servis, hızlı tek seferlik bağlantı | x11vnc parolasız; yalnızca localhost ve SSH tüneli |
| Apache Guacamole | Kullanıcı girişi, merkezi sayfa, çoklu protokol | Debian paketi yok; Tomcat 8080 portu tüm arayüzlerde dinliyor |
| Xfce + xrdp | Standart RDP istemcileriyle bağlantı | Betik 3390 portunu kullanır; tünel önerilir |
noVNC ile tarayıcıda Kali
Belge VNC sunucusu olarak x11vnc seçer, ama başka bir VNC sunucusu da kullanabileceğinizi, desteğin değişebileceğini not eder. Önce paketleri kurarsınız:
sudo apt update
sudo apt install -y novnc x11vncArdından mevcut masaüstünüzü (:0) yalnızca yerel adreste paylaşan bir VNC oturumu başlatırsınız. Belge x11vnc'nin kendi HTTP özelliğini Java gerektirdiği için kullanmaz; noVNC zaten HTML5 deneyimi sunar:
x11vnc -display :0 -autoport -localhost -nopw -bg -xkb -ncache -ncache_cr -quiet -forever
ss -antp | grep vncss çıktısında 127.0.0.1:5900 ve [::1]:5900 görmelisiniz; yani VNC yalnızca makinenin kendisinden erişilebilir. Bu önemlidir, çünkü komuttaki -nopw parametresi VNC için parola istemez. Son olarak noVNC vekilini başlatırsınız; belgeye göre bu komut 8081/TCP portunu açar:
/usr/share/novnc/utils/novnc_proxy --listen 8081 --vnc localhost:5900Belge burada "daha iyisi" diyerek SSH'ı etkinleştirmenizi ve uzaktaki bilgisayardan SSH yerel port yönlendirmesiyle bağlanmanızı önerir. Böylece tarayıcınızda http://localhost:8081 adresini açtığınızda trafik şifreli SSH tünelinden geçer:
sudo systemctl enable ssh --now
ssh kali@SUNUCU_IP -L 8081:localhost:8081SUNUCU_IP yerine kendi Kali makinenizin, yani kendi sunucunuzun adresini yazın. SSH servisinin güvenli ayarları için Kali SSH servisi ayarları yazısına bakın.
Apache Guacamole ile tarayıcıda Kali
Guacamole daha kapsamlı bir çözümdür: birden fazla protokolü destekler ve istemcilerin kullanıcı doğrulaması olan merkezi bir sayfadan bağlanmasını sağlar. Belgeye göre Guacamole Debian'da paketlenmemiştir; resmî kurulum adımlarını izleyebilir, bir Docker imajı kullanabilir ya da belgedeki gibi topluluk tarafından yazılmış otomatik bir kurulum betiğini çalıştırabilirsiniz.
sudo apt update
sudo apt install -y git
git clone https://github.com/MysticRyuujin/guac-install.git /tmp/guac-installBelge bir hatayı özellikle not eder: ABD Doğu saat dilimindeyseniz (EDT) Apache bunu geçerli bir saat dilimi olarak görmediği için farklı bir saat dilimine geçmeniz gerekir; belgede Central saat dilimine geçiliyor. Türkiye saat diliminde bu sorun belgede anılmıyor.
Belgedeki kurulum, ayrı bir MySQL sunucusu olmadan ve MFA etkinleştirmeden yapılan "standalone" bir kurulumdur; MFA'nın kapatılmasının gerekçesi servisin SSH tünelinin arkasına saklanacak olmasıdır. Komutun yapısı şöyledir:
cd /tmp/guac-install/
sudo ./guac-install.sh --nomfa --installmysql --mysqlpwd 'KENDI_MYSQL_PAROLANIZ' --guacpwd 'KENDI_GUAC_PAROLANIZ'Kurulumdan sonra servislerin durumunu ve dinledikleri portları kontrol edebilirsiniz:
systemctl status tomcat9 guacd mysql
sudo ss -antup | grep "mysqld\|guacd\|java"Belgedeki çıktıda MySQL 127.0.0.1:3306'da, guacd 127.0.0.1:4822'de yalnızca yerel olarak dinlerken Tomcat'i çalıştıran java süreci *:8080, yani tüm ağ arayüzlerinde dinler. Guacamole arayüzü http://localhost:8080/guacamole/ adresindedir. MFA kapalı olduğu için 8080 portunu güvenlik duvarıyla dışarıya kapatmanız ve erişimi SSH tüneliyle yapmanız gerekir.
Guacamole için VNC sunucusu
Belge Guacamole'un bağlanacağı VNC sunucusu olarak TigerVNC kullanır. ~/.vnc/xstartup dosyasında Xfce bölümündeki startxfce4 & satırını etkin bırakırsınız (dosyada GNOME, LXQt ve KDE için yorum satırı halinde örnekler de vardır), ardından :1 ekranında bir oturum başlatırsınız:
sudo apt install -y tigervnc-standalone-server
mkdir -p ~/.vnc/
vim ~/.vnc/xstartup
vncserver :1Son olarak Guacamole yönetim panelinde sağ üstteki menüden Settings, ardından Connections sekmesinde New connection ile bağlantıyı tanımlarsınız. Belge Color depth değerini doğru ayarlamanızı vurgular; yanlış ayarda bazı gri tonlar mor ya da başka renklere dönebilir. Kaydettikten sonra Home sayfasından yeni bağlantıya tıklayarak masaüstünü açarsınız.
Xfce ve RDP ile uzak masaüstü

Kali belgesi, WSL ya da Docker gibi doğrudan grafik arayüzü olmayan ortamlar için Xfce ve xrdp kuran kısa bir betik sunar. Betik sistemi günceller, kali-desktop-xfce, xorg, xrdp ve xorgxrdp paketlerini kurar ve xrdp'yi varsayılan 3389 yerine 3390 portunu dinleyecek şekilde ayarlar (servisi başlatmaz):
wget https://gitlab.com/kalilinux/recipes/kali-scripts/-/raw/main/xfce4.sh
chmod +x xfce4.sh
sudo ./xfce4.sh- WSL kullanıyorsanız xrdp ile Xfce'nin bağlanabilmesi için ayrıca
dbus-x11paketini kurun. - Servisi AWS'de
sudo systemctl enable xrdp --now, WSL ya da Docker'dasudo /etc/init.d/xrdp startile başlatın. - Docker'da konteyneri belgedeki gibi 3390 portu yayınlanarak başlatmanız ve
adduserile yeni bir kullanıcı oluşturmanız gerekir; Docker kullanımı için Kali Docker imajları yazısına bakın. - AWS'de belge varsayılan
kalihesabınachpasswdile parola atar. Belgedeki örnek parolakali'dir; siz mutlaka güçlü ve farklı bir parola kullanın.
sudo apt install -y dbus-x11
sudo /etc/init.d/xrdp startWSL ve Docker'da Windows'tan 127.0.0.1:3390 adresine bağlanırsınız. Bulut makinesinde ise belge 3390 portuna kendi IP adresinizden erişim izni vermenizi söyler; AWS bölümündeki daha güvenli öneri ise RDP'yi doğrudan açmak yerine ssh -N -L 3390:127.0.0.1:3390 ile tünel kurup yerelde 127.0.0.1:3390'a bağlanmaktır. Bağlanırken Authentication Required to Create Managed Color Device hatası alırsanız belgede, colord işlemlerine izin veren bir polkit kuralı dosyası (/etc/polkit-1/localauthority/50-local.d/45-allow-colord.pkla) oluşturma çözümü yer alır. WSL tarafındaki Win-KeX seçeneği için WSL ve Win-KeX yazısına bakabilirsiniz.
Bu servisleri açarken güvenlik kontrol listesi
- VNC, noVNC, Guacamole ve RDP portlarını (belgelerde 5900, 8081, 8080 ve 3390) internete doğrudan açmayın; erişimi SSH tüneliyle yapın.
- Varsayılan ve örnek parolaları (guacadmin/guacadmin, kali) ilk iş değiştirin.
- Dinleyen portları
ss -antpile kontrol edin ve beklemediğiniz bir servisin0.0.0.0ya da*üzerinde dinlemediğinden emin olun. - Güvenlik duvarıyla yalnızca SSH portuna izin verin; güvenlik duvarı nedir ve Fail2ban ile SSH koruması yazıları yardımcı olur.
- İşiniz bittiğinde uzak masaüstü servislerini durdurun; sürekli açık kalmaları gerekmiyorsa açılışta otomatik başlatmayın.
Sık Sorulan Sorular
noVNC mi Guacamole mi?
Kali belgesine göre noVNC daha az servis gerektiren hafif bir yaklaşımdır ve hızlı, tek seferlik bağlantılar için uygundur. Guacamole ise kullanıcı doğrulaması, merkezi bağlantı sayfası ve çoklu protokol desteğiyle daha eksiksiz bir çözümdür, ama kurulumu ve bakımı daha ağırdır.
Guacamole'u Kali paket deposundan kurabilir miyim?
Belgeye göre hayır; Guacamole Debian'da paketlenmemiştir. Resmî kurulum talimatları, Docker imajı ya da belgede kullanılan topluluk betiği seçenekleriniz vardır.
Tarayıcıdan bağlanırken neden SSH tüneli kullanmalıyım?
Belgedeki noVNC örneğinde VNC parolasızdır ve Guacamole kurulumu MFA olmadan yapılır; ikisi de servisin SSH tünelinin arkasında kalacağı varsayımıyla böyle ayarlanmıştır. Tünel trafiği şifreler ve servisi yalnızca SSH erişimi olan kişilerle sınırlar.
RDP neden 3389 yerine 3390'da?
Kali'nin Xfce betiği /etc/xrdp/xrdp.ini dosyasında portu bilerek 3390 yapar. Bağlanırken istemcinizde bu portu belirtmeniz gerekir.
Marka adları sahiplerine aittir. Bu yazı bağımsız bir teknik rehberdir; adı geçen kuruluşlarla bayilik veya ortaklık ilişkisi bulunduğu anlamına gelmez.
İlgili içerikler: Kali Linux nedir · Kali SSH ayarları · Kali bulut kurulumu · Kali WSL ve Win-KeX · UFW güvenlik duvarı · SSH ile bağlanma