🚨 Headscale ile Kendi Kendine Barındırılan Modern VPN / Mesh Ağı Kurmak 🔐

Modern ağlarda klasik VPN mimarileri her zaman yeterli olmayabiliyor.

Özellikle şu ihtiyaçlar arttıkça daha esnek çözümler öne çıkıyor:

Evden çalışan kullanıcılar
Homelab ortamları
Bulut sunucuları
Küçük ofisler
Geliştirici makineleri
SSH/RDP erişimleri
Kubernetes node’ları
IoT / edge cihazları

Bu noktada WireGuard tabanlı mesh VPN yaklaşımı oldukça güçlü bir alternatif sunar.

Bu alanda dikkat çeken açık kaynak projelerden biri:

Headscale


Headscale Nedir?

Headscale, Tailscale control server’ın açık kaynaklı ve kendi kendine barındırılabilen bir implementasyonudur.

Daha basit ifade:

Tailscale client’larını kullanırsınız.
Ama merkezi control server olarak Tailscale cloud yerine kendi Headscale sunucunuzu çalıştırırsınız.

Teknik olarak doğru konumlandırma:

Headscale = Self-hosted Tailscale control / coordination server

Headscale doğrudan veri trafiğini taşıyan klasik bir VPN gateway gibi düşünülmemelidir.

Veri trafiği cihazlar arasında WireGuard tabanlı mesh bağlantılar üzerinden akar.

Headscale’in rolü daha çok şudur:

Node kayıtlarını yönetmek
Cihaz kimliklerini koordine etmek
Tailnet yapısını yönetmek
ACL / policy mantığını sağlamak
Route bilgisini koordine etmek
Tailscale client’larının birbirini bulmasını sağlamak

1️⃣ Headscale Nasıl Çalışır?

Headscale mimarisinde üç temel parça vardır:

Headscale server
Tailscale client / tailscaled
WireGuard tabanlı peer-to-peer bağlantı

Genel akış:

Cihaz Tailscale client ile ağa katılır.
→ Headscale control server’a kayıt olur.
→ Cihazlar birbirlerinin bilgilerini öğrenir.
→ NAT traversal denenir.
→ Mümkünse cihazlar doğrudan WireGuard tüneli kurar.
→ Gerekirse relay mekanizmaları devreye girer.

Kısa ifade:

Headscale kontrol düzlemidir.
WireGuard veri düzlemidir.
Tailscale client bağlantıyı kuran uç bileşendir.

2️⃣ Tailscale ile Headscale Arasındaki Fark

BaşlıkTailscaleHeadscale
Control serverTailscale tarafından yönetilirSiz self-host edersiniz
Veri düzlemiWireGuard tabanlı meshWireGuard tabanlı mesh
ClientTailscale clientTailscale client
Yönetim kolaylığıDaha kullanıcı dostu ve ticari hizmetDaha teknik ve self-hosted
Kimlik entegrasyonuGelişmiş SaaS entegrasyonlarıDaha sınırlı / self-managed
Kullanım hedefiBireysel, ekip, enterpriseHomelab, self-hosting, küçük ekipler, lab
OperasyonTailscale yönetirSiz yönetirsiniz

Kısa özet:

Tailscale daha yönetilen ve hazır hizmettir.
Headscale daha fazla kontrol ve self-hosting sağlar.

3️⃣ WireGuard ve Mesh VPN Mantığı

Headscale kullanılan yapılarda bağlantının temelinde WireGuard tabanlı mesh VPN yaklaşımı vardır.

Klasik VPN mimarisi çoğu zaman şöyledir:

Kullanıcı
→ VPN Gateway
→ İç Ağ

Mesh VPN yaklaşımında ise cihazlar mümkün olduğunda doğrudan birbirine bağlanır:

Laptop
↔ Sunucu
↔ Homelab cihazı
↔ Bulut VM
↔ Ofis sistemi

Bu yapı şu avantajları sağlar:

Merkezi VPN gateway darboğazını azaltır.
Cihazdan cihaza güvenli erişim sağlar.
NAT arkasındaki cihazların erişimini kolaylaştırır.
Bulut, ev, ofis ve lab ortamlarını tek overlay ağda birleştirebilir.

4️⃣ NAT Traversal Nedir?

Günlük ağlarda cihazların çoğu NAT arkasındadır.

Örnek:

Ev interneti
Mobil bağlantı
Ofis firewall’u
Cloud NAT
CGNAT

NAT arkasındaki iki cihazın doğrudan birbirine bağlanması her zaman kolay değildir.

Tailscale/Headscale yaklaşımında NAT traversal mantığıyla cihazlar mümkün olduğunca doğrudan bağlantı kurmaya çalışır.

Basit akış:

Cihazlar birbirini control server üzerinden öğrenir.
→ UDP hole punching denenir.
→ Doğrudan bağlantı kurulursa trafik peer-to-peer akar.
→ Doğrudan bağlantı kurulamazsa relay fallback kullanılır.

Kritik not:

Headscale control plane’i self-host edebilirsiniz.
Ancak NAT traversal, DERP/relay ve client davranışları ayrıca doğru tasarlanmalıdır.

5️⃣ Headscale Kimler İçin Uygun?

Headscale özellikle şu kullanıcı ve ekipler için uygundur:

Kendi VPN altyapısını yönetmek isteyen sistem yöneticileri
Homelab kullanıcıları
Siber güvenlik lab ortamları
Küçük ekipler
Açık kaynak meraklıları
Bulut bağımlılığını azaltmak isteyen teknik kullanıcılar
Geliştirici ortamlarını güvenli bağlamak isteyen ekipler
Kendi control plane’ini yönetmek isteyen kurumlar

6️⃣ Headscale Kimler İçin Uygun Olmayabilir?

Headscale güçlüdür; ancak herkes için en kolay seçenek değildir.

Şu durumlarda Tailscale’in yönetilen hizmeti veya farklı ticari çözümler daha uygun olabilir:

Kurumsal destek ihtiyacı varsa
Gelişmiş SSO/IdP entegrasyonları kritikse
Büyük ölçekli enterprise yönetim gerekiyorsa
Kullanıcı dostu merkezi web yönetim beklentisi varsa
7/24 vendor desteği gerekiyorsa
Ağ ekibi self-hosted control plane işletmek istemiyorsa

Kısa ifade:

Headscale daha fazla kontrol sağlar.
Ama daha fazla operasyonel sorumluluk ister.

7️⃣ Headscale’in Temel Avantajları

Açık Kaynak ve Self-Hosted

Headscale’i kendi sunucunuzda çalıştırabilirsiniz.

Bu sayede control plane üzerinde daha fazla kontrol sahibi olursunuz.

Sunucu sizde
Konfigürasyon sizde
Kayıtlar sizde
Operasyon sorumluluğu sizde

WireGuard Tabanlı Modern Bağlantı

Headscale ile kullanılan Tailscale client’ları WireGuard tabanlı güvenli bağlantılar kurar.

Avantajlar:

Modern kriptografi
Düşük overhead
Hızlı bağlantı
Peer-to-peer mesh yaklaşımı
Basit client deneyimi

NAT Arkasındaki Cihazları Bağlama

Klasik VPN’de NAT arkasındaki cihazlara erişim zor olabilir.

Headscale/Tailscale modeli, NAT traversal yaklaşımıyla bu problemi azaltır.

Örnek:

Evdeki mini sunucu
Buluttaki VPS
Ofisteki test makinesi
Laptop
Mobil cihaz

tek overlay ağ içinde birbirine erişebilir hale gelir.


Homelab ve Lab Ortamları İçin Uygun

Headscale özellikle homelab kullanıcıları için güçlüdür.

Örnek kullanım:

Evdeki Proxmox sunucusuna uzaktan erişim
Raspberry Pi cihazlarını yönetme
Lab firewall arayüzüne güvenli erişim
SSH/RDP bağlantılarını private overlay üzerinden yapma
Kubernetes lab node’larını birbirine bağlama

8️⃣ Tipik Mimari

Basit Headscale mimarisi şu şekilde düşünülebilir:

Headscale Server
   ↑
   | Control plane
   ↓
Tailscale Client 1  ← WireGuard mesh →  Tailscale Client 2
Tailscale Client 3  ← WireGuard mesh →  Tailscale Client 4

Daha pratik örnek:

VPS üzerinde Headscale
→ Evdeki Proxmox node
→ Laptop
→ Cloud VM
→ Ofis test sunucusu
→ Mobil cihaz

Bu cihazlar aynı private overlay ağ içinde haberleşebilir.


9️⃣ Güvenlik Açısından Dikkat Edilmesi Gerekenler

Headscale self-hosted olduğu için güvenlik sorumluluğu sizdedir.

Kontrol edilmesi gerekenler:

Headscale sunucusunun hardening’i
TLS sertifikası
Reverse proxy güvenliği
Admin erişimi
Firewall kuralları
Kullanıcı ve node kayıt süreçleri
ACL / policy dosyası
Loglama
Yedekleme
Güncelleme yönetimi
DERP / relay yapılandırması

Control Server Güvenliği

Headscale sunucusu kritik bir bileşendir.

Çünkü node kayıtları, koordinasyon bilgisi ve policy bu sistem üzerinden yönetilir.

Bu nedenle:

Sunucu internete açık olacaksa reverse proxy arkasına alınmalı.
TLS zorunlu olmalı.
Admin arayüzleri kısıtlanmalı.
SSH erişimi MFA veya key-based olmalı.
Loglar izlenmeli.
Düzenli güncelleme yapılmalı.

🔟 ACL ve Erişim Kontrolü

Modern mesh VPN mimarisinde en kritik konu şudur:

Ağa bağlanan herkes her yere erişmemeli.

Bu nedenle ACL / policy yaklaşımı kullanılmalıdır.

Örnek erişim prensibi:

Kullanıcı laptop’u sadece kendi sunucularına erişsin.
Admin cihazları yönetim portlarına erişsin.
Dev ortamı prod ortamına erişmesin.
SSH sadece belirli kullanıcı ve node’lara açık olsun.
RDP sadece gerekli makineler için açık olsun.

Kısa ifade:

Mesh VPN kurmak yeterli değildir.
Yetki modeli doğru tasarlanmalıdır.

1️⃣1️⃣ Subnet Router ve Exit Node Mantığı

Headscale/Tailscale ekosisteminde bazı node’lar daha özel roller üstlenebilir.

Subnet Router

Subnet router, overlay ağa dahil olmayan bir iç network’e erişim sağlayabilir.

Örnek:

Tailscale node:
192.168.10.0/24 LAN’ına route advertise eder.

Diğer node’lar:
Bu LAN’a overlay üzerinden erişebilir.

Kullanım senaryosu:

Ev ağına uzaktan erişim
Lab VLAN’ına erişim
Ofis subnet’ine kontrollü erişim
Cloud VPC’ye erişim

Exit Node

Exit node, cihazların internet trafiğini belirli bir node üzerinden çıkarmasını sağlar.

Örnek:

Laptop → Exit Node → Internet

Kullanım senaryosu:

Güvenilir lokasyondan internet çıkışı
Lab ortamında trafik yönlendirme
Kişisel kullanım senaryoları

Dikkat:

Exit node tüm internet trafiğini taşıyabilir.
Loglama, gizlilik ve bandwidth dikkatli değerlendirilmelidir.

1️⃣2️⃣ Headscale ile Tailscale Aynı Şey mi?

Hayır.

Kısa cevap:

Tailscale = Client + hosted coordination service + ticari ekosistem
Headscale = Tailscale coordination server’ın açık kaynak self-hosted alternatifi

Headscale ile genellikle Tailscale client kullanılır.

Ancak Tailscale’in tüm ticari özelliklerini birebir beklemek doğru değildir.

Dikkat edilmesi gerekenler:

Bazı özellikler sınırlı olabilir.
Bazı client/platform davranışları farklılık gösterebilir.
Yönetim deneyimi Tailscale SaaS kadar hazır değildir.
Operasyonel sorumluluk self-host eden kişidedir.

1️⃣3️⃣ Headscale, Klasik VPN’in Yerine Geçer mi?

Bazı senaryolarda evet, bazı senaryolarda hayır.

Yerine Geçebileceği Senaryolar

Admin erişimleri
SSH / RDP erişimi
Homelab bağlantıları
Küçük ekip uzak erişimi
Cloud VM yönetimi
Lab network bağlantısı
Geliştirici ortamları

Dikkatli Değerlendirilmesi Gereken Senaryolar

Büyük ölçekli enterprise VPN
Regülasyon yoğun kurumlar
Çok karmaşık network segmentation ihtiyacı
Gelişmiş ZTNA / IdP entegrasyonu
Resmî vendor support gerektiren ortamlar
Kritik production erişimleri

1️⃣4️⃣ Headscale, Zero Trust mıdır?

Headscale tek başına tam bir Zero Trust platformu değildir.

Ancak doğru ACL, cihaz kimliği, kullanıcı kontrolü ve loglama ile Zero Trust yaklaşımına katkı sağlayabilir.

Zero Trust için ayrıca şu başlıklar gerekir:

Kimlik doğrulama
Cihaz güven durumu
MFA
Yetki politikası
Minimum yetki prensibi
Loglama ve izleme
Sürekli doğrulama
Segmentasyon
Denetim

Kısa ifade:

Headscale güvenli bağlantı sağlar.
Zero Trust için politika, kimlik ve izleme katmanları da gerekir.

1️⃣5️⃣ Operasyonel İzleme

Headscale kurulduktan sonra izlenmesi gereken başlıklar:

Node sayısı
Aktif bağlantılar
Kayıtlı kullanıcılar
Route advertisement durumları
ACL değişiklikleri
Authentication olayları
Sunucu CPU/RAM kullanımı
Disk ve log kullanımı
TLS sertifika süresi
DERP/relay erişilebilirliği

Bu kayıtlar merkezi loglama veya SIEM tarafına alınabilir.


1️⃣6️⃣ Sık Yapılan Hatalar

1️⃣ Headscale’i Tam Tailscale Klonu Sanmak

Headscale, Tailscale control server’ın açık kaynak self-hosted implementasyonudur. Tailscale’in tüm ticari yönetim özelliklerini birebir sunmasını beklemek doğru değildir.

2️⃣ Control Plane Güvenliğini Hafife Almak

Headscale sunucusu kritik bileşendir. Ele geçirilirse node kayıtları ve erişim modeli risk altına girebilir.

3️⃣ ACL Yazmadan Her Cihazı Her Yere Açmak

Mesh VPN’de en büyük risklerden biri gereğinden geniş erişimdir.

4️⃣ DERP / Relay Mantığını Anlamadan Kurulum Yapmak

Her bağlantı doğrudan peer-to-peer olmayabilir. NAT, firewall ve CGNAT durumlarında relay gerekebilir.

5️⃣ Loglama ve Backup Yapmamak

Self-hosted control server işletiyorsanız yedekleme ve loglama sizin sorumluluğunuzdadır.

6️⃣ Homelab Kolaylığını Enterprise Hazırlık Sanmak

Homelab’da çalışan yapı, enterprise için yeterli güvenlik, destek ve operasyon modeline sahip olmayabilir.


1️⃣7️⃣ 48s Mini-PoC Planı

  1. Küçük bir VPS veya test Linux sunucusu hazırlayın.
  2. Sunucuyu güncelleyin ve firewall kurallarını sıkılaştırın.
  3. Headscale kurulumunu yapın.
  4. TLS için reverse proxy veya sertifika yapısını hazırlayın.
  5. İlk kullanıcıyı oluşturun.
  6. Laptop üzerinde Tailscale client kurun.
  7. Client’ı Headscale server’a bağlayın.
  8. İkinci bir test node ekleyin.
  9. Node’lar arasında ping/SSH testi yapın.
  10. ACL ile erişimi sınırlayın.
  11. Bir node’u subnet router olarak test edin.
  12. Loglama, backup ve update prosedürünü dokümante edin.

Kısa Seçim Rehberi

Tailscale:
Hazır, yönetilen, kullanıcı dostu hizmet istiyorsanız.

Headscale:
Control server’ı kendiniz barındırmak ve açık kaynak yaklaşım istiyorsanız.

WireGuard klasik:
Basit site-to-site veya manuel peer yapılandırması yeterliyse.

NetBird / Nebula / ZeroTier:
Alternatif açık kaynak / mesh VPN yaklaşımlarını değerlendirmek istiyorsanız.

Sonuç

Headscale, modern mesh VPN mimarisi kurmak isteyen teknik kullanıcılar ve ekipler için güçlü bir açık kaynak seçenektir.

Doğru konumlandırıldığında:

Tailscale client deneyimini kullanır.
Control server’ı self-host etmenizi sağlar.
WireGuard tabanlı güvenli mesh bağlantılar kurar.
Homelab ve lab ortamlarında büyük esneklik sunar.
Bulut bağımlılığını azaltmaya yardımcı olur.

Ancak Headscale’i doğru anlamak gerekir:

Headscale klasik VPN gateway değildir.
Headscale Tailscale’in tamamının klonu değildir.
Headscale control plane implementasyonudur.
Veri trafiği WireGuard tabanlı mesh üzerinden akar.
Self-hosting daha fazla kontrol ama daha fazla sorumluluk demektir.

Kısa özet:

Tailscale kolaylık sağlar.
Headscale kontrol sağlar.
WireGuard güvenli tüneli sağlar.
ACL doğru erişim modelini sağlar.

Kendi VPN çözümünü kurmak, homelab ağlarını güvenli bağlamak veya Tailscale control plane’i self-host etmek isteyenler için Headscale kesinlikle incelenmesi gereken açık kaynak projelerden biridir.


🧑‍💻 Kaynak ve teşekkür: IT-Connect & Florian Burnel paylaşım içeriği referans alınarak teknik olarak düzenlenmiştir.


Cem Kemal Erbaş sitesinden daha fazla şey keşfedin

Subscribe to get the latest posts sent to your email.

About Cem Kemal Erbaş

Check Also

💳 POS’a Kartı Dokunduruyoruz… Peki O Birkaç Saniyenin Arkasında Neler Oluyor?

Bir mağazada 100 TL’lik alışveriş yaptığımızı düşünelim. Kullanıcı açısından süreç son derece basittir: Kartı dokundur …

Bir yanıt yazın