# WireGuard VPN kurulumu: Ubuntu sunucu ve istemci ayarı adım adım

https://kervanhosting.com/bilgi-bankasi/makale/wireguard-vpn-kurulumu-ubuntu-sunucu-ve-istemci-ayari

WireGuard, hızlı, hafif ve yapılandırması basit bir VPN protokolüdür. Kendi VDS sunucunuza kurarsanız trafiğinizi şifreli olarak sunucudan çıkarabilir, kamuya açık ağlarda güvende olabilir ya da evdeki/ofisteki cihazlara özel ağ üzerinden ulaşabilirsiniz. Aşağıdaki kurulum Ubuntu 24.04 içindir. İki kural önemli: yalnızca kendi kullanımınız ve kendi cihazlarınız için kurun; sunucunuzu başkalarına açık bir VPN hizmeti olarak işletmek kullanım koşullarını ve hukuki sorumluluğu ilgilendirir.

## 1. Kurulum ve anahtarlar

```
sudo apt update
sudo apt install -y wireguard
cd /etc/wireguard
umask 077
wg genkey | tee sunucu_gizli.key | wg pubkey > sunucu_acik.key
wg genkey | tee istemci_gizli.key | wg pubkey > istemci_acik.key
```

Her uç için bir gizli ve bir açık anahtar çiftidir. Gizli anahtarlar kimseyle paylaşılmaz; `umask 077` dosyaları yalnızca root okuyacak şekilde oluşturur. Anahtarların içeriğini `cat` ile okuyup aşağıdaki dosyalara yazacaksınız.

## 2. Sunucu yapılandırması

Önce sunucunun internete çıkış arayüzünün adını öğrenin: `ip route show default` (örnek çıktı: `... dev ens18 ...`). Sonra `/etc/wireguard/wg0.conf` dosyasını oluşturun:

```
[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = SUNUCU_GIZLI_ANAHTAR
PostUp   = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens18 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens18 -j MASQUERADE

[Peer]
PublicKey = ISTEMCI_ACIK_ANAHTAR
AllowedIPs = 10.8.0.2/32
```

`ens18` yerine kendi arayüz adınızı yazın. `PostUp/PostDown` satırları, VPN istemcisinden gelen trafiği sunucu üzerinden internete çıkaran NAT kurallarıdır. Dosya izni 600 olmalıdır: `sudo chmod 600 /etc/wireguard/wg0.conf`.

## 3. IP yönlendirmeyi açın

```
echo "net.ipv4.ip_forward=1" | sudo tee /etc/sysctl.d/99-wireguard.conf
sudo sysctl --system
```

## 4. Güvenlik duvarı

```
sudo ufw allow 51820/udp
```

UFW kullanıyorsanız ek olarak yönlendirmeye izin vermeniz gerekebilir: `/etc/default/ufw` içinde `DEFAULT_FORWARD_POLICY="ACCEPT"` yapın ve `sudo ufw reload`. Panelin güvenlik duvarı aracında özel kural tanımladıysanız 51820 UDP'yi orada da açın: [UFW rehberi](https://kervanhosting.com/bilgi-bankasi/makale/ufw-ile-port-acma-ve-kapatma-ubuntu-guvenlik-duvari).

## 5. Başlatın

```
sudo systemctl enable --now wg-quick@wg0
sudo wg show
```

`wg show` arayüzü ve (henüz bağlanmamış) istemciyi listeler.

## 6. İstemci yapılandırması

Bilgisayarınıza ya da telefonunuza WireGuard uygulamasını kurun (resmi uygulamaları vardır) ve şu yapılandırmayı içe aktarın ya da elle girin:

```
[Interface]
Address = 10.8.0.2/24
PrivateKey = ISTEMCI_GIZLI_ANAHTAR
DNS = 1.1.1.1

[Peer]
PublicKey = SUNUCU_ACIK_ANAHTAR
Endpoint = 203.0.113.10:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
```

`Endpoint` sunucunuzun genel IP adresidir. `AllowedIPs = 0.0.0.0/0` tüm trafiği VPN'den geçirir; yalnızca sunucunun özel ağına ulaşmak isterseniz `10.8.0.0/24` yazın.

## Test

İstemcide VPN'i açıp tarayıcıdan "IP adresim nedir" sitesine bakın; sunucunuzun IP adresi görünmelidir. Sunucuda `sudo wg show` artık bir `latest handshake` satırı gösterir. Bağlanmıyorsa: UDP 51820'nin dışarıdan açık olduğunu, anahtarların doğru yere yazıldığını (en sık hata açık/gizli anahtarın karışması), `Endpoint` adresini ve `ip_forward` değerini kontrol edin: `cat /proc/sys/net/ipv4/ip_forward` çıktısı 1 olmalı.

## Bilmeniz gerekenler

- İstemci eklemek için sunucu dosyasına yeni bir `[Peer]` bloğu (farklı bir `10.8.0.x/32`) ekleyip `sudo wg syncconf wg0 <(wg-quick strip wg0)` ya da servisi yeniden başlatın.
- VPN, internet hızınızı sunucunun hızıyla sınırlar ve sunucunun kullanım koşullarına tabidir. Kötüye kullanım (spam, saldırı, izinsiz içerik) hizmetin askıya alınmasına yol açar.
- Gizli anahtarı kaybeden ya da paylaşan kişinin anahtarını sunucudan silip yenisini üretin.

## Sık sorulanlar

### OpenVPN'e göre farkı ne?

WireGuard çok daha küçük bir koda sahiptir, kurulumu basittir ve genellikle daha hızlıdır. OpenVPN daha esnek ama karmaşıktır.

### Telefonumdan nasıl eklerim?

Sunucuda istemci yapılandırmasından bir QR kodu üretebilirsiniz (`qrencode -t ansiutf8 < istemci.conf`) ve telefondaki WireGuard uygulamasından taratabilirsiniz.

### IPv6 de çalışır mı?

Çalışır ama ek yapılandırma gerekir. Bu rehber IPv4 içindir; IPv6 sızıntısını önlemek için istemcide IPv6'yı kapatmak ya da VPN üzerinden yönlendirmek gerekir.

**İlgili makaleler**

- [UFW ile port açma ve kapatma (Ubuntu güvenlik duvarı)](https://kervanhosting.com/bilgi-bankasi/makale/ufw-ile-port-acma-ve-kapatma-ubuntu-guvenlik-duvari)
- [Yeni Linux sunucuda ilk yapılması gerekenler](https://kervanhosting.com/bilgi-bankasi/makale/yeni-linux-sunucuda-ilk-yapilmasi-gerekenler)
- [SSH anahtarı nedir? Parola yerine nasıl kullanırım?](https://kervanhosting.com/bilgi-bankasi/makale/ssh-anahtari-nedir-parola-yerine-nasil-kullanirim)

*Sorununuz çözülmediyse [destek talebi açın](https://kervanhosting.com/destek-taleplerim). Hangi adımı denediğinizi ve ekranda ne gördüğünüzü yazarsanız çözüm çok daha hızlı olur.*
