Bu doküman, erişilebilir bir uzak sistem ile yerel bir Linux sistemi arasında WireGuard kullanarak point-to-point VPN bağlantısının nasıl kurulacağını anlatmaktadır.
WireGuard; hızlı, sade ve modern kriptografi kullanan bir VPN çözümüdür. Geleneksel VPN çözümlerine kıyasla çok daha az konfigürasyon gerektirir ve düşük kaynak tüketimi ile yüksek performans sunar.
Gereksinimler
- Uzakta çalışan ve erişilebilen bir Linux makine (örneğin VPS, fiziksel sunucu veya yönlendirilmiş bir NAT cihazı)
- Yerel bir Linux sistem (örneğin dizüstü bilgisayar, ofis sunucusu)
- Her iki uçta root/sudo erişimi
- İnternet bağlantısı ve gerekiyorsa güvenlik duvarı izinleri
1. WireGuard Kurulumu
sudo apt update sudo apt install wireguard -y WireGuard kurulumunun ardından, her iki uç için ayrı ayrı anahtar çifti oluşturulması gerekmektedir.
2. Anahtar Üretimi
wg genkey | tee privatekey | wg pubkey > publickey Bu komut ile her cihaz için bir özel ve bir genel anahtar üretilmiş olur. Genel anahtar karşı tarafa verilir, özel anahtar ise yalnızca yerel cihazda kalmalıdır.
3. Yapılandırma Örnekleri
Aşağıdaki örneklerde, sunucu 10.0.0.1 adresini, istemci ise 10.0.0.2 adresini kullanmaktadır. Her iki uç, aynı sanal ağ (örneğin 10.0.0.0/24) içinde yer almalıdır.
Not: İstemci konfigürasyonundaki
Endpoint = <sunucu_ip>:51820satırı, istemcinin sunucuya hangi IP ve port üzerinden bağlanacağını belirtir. Bu IP, genellikle sunucunun public IP adresidir veya eğer aynı ağ üzerindeyseler, sunucunun erişilebilir lokal IP'si de olabilir. Eğer sunucu NAT arkasındaysa, bu port yönlendirilmiş olmalıdır. Bu satır olmadan istemci bağlantıyı başlatamaz.
Sunucu (10.0.0.1)
[Interface] PrivateKey = <sunucu_private> Address = 10.0.0.1/24 ListenPort = 51820 [Peer] PublicKey = <istemci_public> AllowedIPs = 10.0.0.2/32 PersistentKeepalive = 25 İstemci (10.0.0.2)
[Interface] PrivateKey = <istemci_private> Address = 10.0.0.2/24 ListenPort = 51821 [Peer] PublicKey = <sunucu_public> Endpoint = <sunucu_ip>:51820 AllowedIPs = 10.0.0.1/32 PersistentKeepalive = 25 4. Firewall Ayarı (Sunucu)
sudo ufw allow 51820/udp # veya sudo iptables -A INPUT -p udp --dport 51820 -j ACCEPT Sunucunun güvenlik duvarı yapılandırması, UDP 51820 portunun dışarıdan ulaşılabilir olmasını sağlamalıdır.
5. Servis Başlatma
sudo systemctl start wg-quick@wg0 sudo systemctl start wg-quick@wg1 Servisler başladıktan sonra, VPN tüneli otomatik olarak kurulacaktır.
6. Bağlantı Kontrolü
sudo wg show ping 10.0.0.1 ping 10.0.0.2 wg show komutu ile bağlantı durumu ve handshake zamanları takip edilebilir. ping komutları ise veri iletiminin sağlıklı çalıştığını gösterir.
Yeni Peer Ekleme (10.0.0.3)
WireGuard tek bir peer ile sınırlı değildir. Aynı sunucuya birden fazla istemci bağlanabilir. Bunun için sunucuya yeni [Peer] blokları eklenir.
Sunucuya ek:
[Peer] PublicKey = <yeni_peer_public> AllowedIPs = 10.0.0.3/32 PersistentKeepalive = 25 Yeni istemci konfigürasyonu:
[Interface] PrivateKey = <peer_private> Address = 10.0.0.3/24 ListenPort = 51822 [Peer] PublicKey = <sunucu_public> Endpoint = <sunucu_ip>:51820 AllowedIPs = 10.0.0.1/32 PersistentKeepalive = 25 WireGuard ile sade, modern ve hızlı VPN yapıları kurmak oldukça esnektir. Bu yapı hem kişisel projelerde hem de üretim ortamlarında güvenle kullanılabilir.
Top comments (0)