🚀 Linux ve Windows sunucularda yeni müşterilere özel %20 indirim! Kod: ILK20  |  Hemen sipariş ver →
shield Sunucu Güvenliği & Sıkılaştırma

Ubuntu'da WireGuard VPN Sunucusu Kurulumu: Adım Adım Rehber

Ubuntu sunucunuzda WireGuard VPN kurulumunu adım adım anlatıyoruz. Hızlı, güvenli ve modern VPN çözümü ile sunucu güvenliğinizi artırın. Pratik örneklerle.

person
Editör
(Güncellendi: 28 Tem 2026) schedule 6 dk okuma visibility 27 görüntülenme

WireGuard Nedir ve Neden Tercih Edilmeli?

WireGuard, son yılların en popüler VPN protokollerinden biri haline geldi. OpenVPN gibi geleneksel çözümlere kıyasla çok daha hızlı, basit ve güvenli. Çekirdek seviyesinde çalıştığı için gecikme süresi neredeyse sıfıra iniyor. Üstelik yalnızca 4000 satır kodla yazılmış olması, güvenlik denetimlerini kolaylaştırıyor. Ubuntu sunucunuzda WireGuard kurarak hem uzaktan erişim hem de site-to-site bağlantıları kurabilirsiniz. Bu yazıda, sıfırdan bir WireGuard sunucusu kurup yapılandıracağız.

Kurulum Öncesi Gereksinimler

İşlem yapacağınız sunucuda Ubuntu 20.04 veya üzeri bir sürüm olması yeterli. Root yetkilerine sahip olmanızı öneririz. Ayrıca sunucunuzun 51820 UDP portunun açık olduğundan emin olun. Güvenlik duvarı ayarlarınızı buna göre düzenleyin. Örneğin, UFW kullanıyorsanız şu komutla portu açabilirsiniz:

sudo ufw allow 51820/udp

WireGuard Kurulumu

Ubuntu'ya WireGuard kurmak için PPA eklemeniz gerekiyor. İlk olarak sistem paketlerinizi güncelleyin:

sudo apt update && sudo apt upgrade -y

Ardından WireGuard deposunu ekleyip kuralım:

sudo add-apt-repository ppa:wireguard/wireguard
sudo apt update
sudo apt install wireguard -y

Kurulum tamamlandığında wg ve wg-quick komutları kullanıma hazır olacak. Bu noktada modülün yüklendiğini kontrol etmek için lsmod | grep wireguard komutunu çalıştırabilirsiniz. Eğer bir çıktı alamazsanız, çekirdek modülünü manuel olarak yüklemek gerekebilir.

Anahtar Çifti Oluşturma

WireGuard, özel ve genel anahtar çiftleriyle çalışır. Sunucu ve her istemci için benzersiz anahtarlar oluşturmalısınız. Sunucu anahtarlarını oluşturmak için:

wg genkey | tee /etc/wireguard/server_private.key | wg pubkey > /etc/wireguard/server_public.key

Bu komut, özel anahtarı /etc/wireguard/server_private.key dosyasına yazarken, genel anahtarı da /etc/wireguard/server_public.key dosyasına kaydeder. Anahtarların izinlerini yalnızca root okuyabilecek şekilde ayarlayın:

sudo chmod 600 /etc/wireguard/server_private.key

Sunucu Yapılandırması

Şimdi asıl yapılandırma dosyasını oluşturuyoruz. /etc/wireguard/wg0.conf dosyasını aşağıdaki gibi düzenleyin:

[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = (sunucu_özel_anahtarınız)

PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

Address satırı, WireGuard arayüzüne verilecek IP adresini belirler. Bu örnekte 10.0.0.0/24 alt ağını kullandık. PrivateKey kısmına önceden oluşturduğunuz özel anahtarı yapıştırın. PostUp ve PostDown kuralları, VPN trafiğini yönlendirmek için gerekli iptables kurallarını ekler ve kaldırır. Burada eth0 yerine kendi ana ağ arayüzünüzü yazmayı unutmayın.

Eğer sunucunuz IPv6 kullanıyorsa, benzer kuralları ip6tables ile eklemeniz gerekir. Ayrıca, paket yönlendirmeyi etkinleştirmek için /etc/sysctl.conf dosyasında net.ipv4.ip_forward=1 satırını bulup yorum işaretini kaldırın. Ardından sysctl -p ile ayarı uygulayın.

İstemci Ekleme

Her istemci için bir anahtar çifti oluşturmanız gerekir. Bunu sunucuda yapıp yapılandırma dosyasını istemciye gönderebilirsiniz. Örnek bir istemci yapılandırması /etc/wireguard/ altına client1.conf olarak kaydedilebilir:

[Interface]
PrivateKey = (istemci_özel_anahtarı)
Address = 10.0.0.2/32
DNS = 8.8.8.8

[Peer]
PublicKey = (sunucu_genel_anahtarı)
Endpoint = (sunucu_ip_adresi):51820
AllowedIPs = 0.0.0.0/0

Address istemciye verilecek IP, DNS ise kullanılacak DNS sunucusu. AllowedIPs ile tüm trafiği VPN üzerinden yönlendirebilirsiniz. İstemci dosyası hazır olduktan sonra, sunucu yapılandırmasına da bir [Peer] bölümü eklemelisiniz. Aynı wg0.conf dosyasına istemcinin genel anahtarını ve IP adresini ekleyin:

[Peer]
PublicKey = (istemci_genel_anahtarı)
AllowedIPs = 10.0.0.2/32

Böylece sunucu, istemciden gelen paketleri kabul edecek. Birden fazla istemci eklemek için her birine ayrı [Peer] bloğu oluşturmanız yeterli.

WireGuard Arayüzünü Başlatma

Yapılandırma tamamlandığında arayüzü başlatmak için:

sudo wg-quick up wg0

Başarılı olup olmadığını sudo wg show komutuyla kontrol edebilirsiniz. Eğer her şey yolundaysa, arayüzü başlangıçta otomatik olarak çalışacak şekilde etkinleştirin:

sudo systemctl enable wg-quick@wg0

Artık istemci tarafında da yapılandırma dosyasını kullanarak bağlantı kurabilirsiniz. Örneğin, bir Linux istemcide wg-quick up client1.conf komutu yeterli. Mobil veya Windows istemciler için resmi WireGuard uygulamalarını kullanabilirsiniz.

Güvenlik İpuçları

WireGuard doğası gereği güvenli olsa da, bazı ek önlemler almanızda fayda var. İlk olarak, sunucudaki wg0.conf dosyasına gereksiz [Peer] girişleri eklemeyin. Her istemci için sadece bir IP tanımlamak, olası saldırı yüzeyini daraltır. Ayrıca, istemci anahtarlarını düzenli olarak yenileyin. Özellikle mobil cihazlar kaybolduğunda, ilgili istemcinin genel anahtarını sunucudan kaldırarak erişimi hemen iptal edebilirsiniz.

Bir diğer önemli nokta, AllowedIPs ayarını mümkün olduğunca dar tutmak. Eğer tüm trafiği yönlendirmeniz gerekmiyorsa, sadece belirli alt ağları tanımlayın. Bu sayede gereksiz bant genişliği kullanımının önüne geçersiniz. Son olarak, sunucuda çalışan diğer servislerin güvenliğinden emin olun. WireGuard dışında açık port bırakmamak, saldırganların işini zorlaştıracaktır.

Sık Karşılaşılan Sorunlar ve Çözümleri

Bazı kullanıcılar bağlantı kurabildiği halde internete çıkamadığını bildiriyor. Bunun en yaygın nedeni, iptables kurallarının doğru çalışmaması. PostUp içindeki MASQUERADE kuralının doğru arayüzle eşleştiğinden emin olun. Ayrıca, allowed-ips içinde 0.0.0.0/0 kullanıyorsanız, istemcinin varsayılan yolu değiştirdiğini unutmayın. DNS çözümlemesi sorunları için istemci yapılandırmasında DNS sunucusu belirtmeyi ihmal etmeyin.

Bir diğer sorun ise port kapalılığı. Sunucunuzun 51820 UDP portuna gelen bağlantılara izin verdiğinizi kontrol edin. Ayrıca, bazı bulut sağlayıcıları (AWS, Azure) sanal güvenlik duvarlarında bu portu ayrıca açmanızı gerektirebilir. telnet veya nc gibi araçlarla portun erişilebilir olduğunu test edebilirsiniz.

Sonuç

WireGuard, Ubuntu sunucunuzda kısa sürede kurulabilecek ve yüksek performans sunacak bir VPN çözümü. Bu rehberdeki adımları takip ederek hem güvenli uzaktan erişim hem de şeffaf bir ağ altyapısı elde edebilirsiniz. Unutmayın, güvenlik sadece doğru yapılandırmayla değil, düzenli güncelleme ve izlemeyle de sağlanır. WireGuard ekibinin yayınladığı güncellemeleri takip edin ve sunucunuzu her zaman güncel tutun.

Bu Makaleyi Paylaş

İlgili Yazılar