Ubuntu Wireguard Kurulumu
Ben kurulumu Ubuntu 22 üzerinde yaptım. Öncelikle sunucuya SSH ile bağlantı kurulur, sonrasında
sudo apt update -y
Komut yazıldıktan sonra yukarıda gibi bir ekran görmemiz gerekiyor.
Daha sonra Wireguard Paketi repoda varmı kontrol edilir.
sudo apt-cache show wireguard
Bu şekilde bir bilgi ekranı görüyorsak herşey yolundadır.
Şimdi aşağıda ki komutu yazarak kurulum işlemlerini başlatabiliriz.
sudo apt install wireguard -y
Yukarıdaki ekranı görüyorsak kurulum işlemleri tamamlanmıştır. Şimdi aşağıda ki komutu yazarak kurulumun varlığını doğruluyoruz.
dpkg -l wireguard
Şu an için Wireguard VPN sunucusu kurulumunu tamamlandık. Yapmamız gereken öncelikle private key oluşturmaktır. Unutmayınız ki bu key gizlidir hiçbir şekilde kimse ile paylaşılmaması gerekmektedir.
wg genkey | sudo tee /etc/wireguard/private.key
Yukarıda ki ekranı görüyorsak artık Private Key oluşturulmuştur. Oluşturduğumuz private key değerini bir yere not alıyoruz birazdan kullanacağız. Şimdi private key dosyamızın izinlerini düzenleyelim.
sudo ls -ld /etc/wireguard/private.key
sudo chmod 600 /etc/wireguard/private.key
Şimdi bir tanede public key oluşturacağız, bu dosya ve değer sayesinde dış dünyadan sunucumuza erişebiliriz.
sudo cat /etc/wireguard/private.key | wg pubkey | sudo tee /etc/wireguard/public.key
Public key içeriğini de kopyalıyoruz, birazdan private key dosyası gibi onu da kullanacağız. Şimdi not aldığımız değerleri kullanma zamanına geldik. Öncelikle aşağıda ki komut ile wg0.conf dosyamızı oluşturuyoruz ve düzenlemeye başlıyoruz.
sudo vim /etc/wireguard/wg0.conf
Komutunu yazarak dosyamızı açıyoruz ve içeriğine aşağıda ki kodları yapıştırıyoruz. Burada dikkat edilmesi gereken nokta ens160 sunucumuzun interface bacağının adıdır. Sizde ne yazıyorsa onunla değiştirmeniz gerekmektedir.
[Interface] Address = 10.10.10.1/24 SaveConfig = true PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o ens160 -j MASQUERADE;iptables -A FORWARD -o %i -j ACCEPT PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o ens160 -j MASQUERADE;iptables -D FORWARD -o %i -j ACCEPT ListenPort = 8080 PrivateKey = PRIVATE KEY BILGISINI BURAYA YAZIYORUZ [Peer] PublicKey = PUBLIC KEY BILGISIN BURAYA YAZIYORUZ AllowedIPs = 10.10.10.2/32 [Peer] PublicKey = BAŞKA BİR CİHAZIN BAĞLANMASINI İSTİYORSAK PUBLIC KEY BILGISINI BURAYA YAZIYORUZ. AllowedIPs = 10.10.10.3/32
Burada dikkat etmeniz gereken nokta Private key bilgisinin doğru girilmesi ve port alanıdır. Ben port olarak 8080 yazdım, siz boştaki istediğiniz portları yazabilirsiniz. Dikkat birçok sunucuda 8080 portu aktif kullanılmaktadır. Ben kullanmadığım için yazdım. Dosyamız ile işimiz bittikten sonra ESC tuşuna basıyoruz wq tuşlarına basıp ENTER tuşu ile kayıt işlemini tamamlıyoruz. Gerekli dosya izinlerini de aşağıdaki komutlar ile veriyoruz.
sudo chmod 600 /etc/wireguard/wg0.conf
sudo ls -ld /etc/wireguard/wg0.conf
Şimdi firewall üzerinden gerekli port erişim izinlerini veriyoruz.
sudo ufw allow 8080/udp
sudo ufw allow 8080/tcp
Ben dikkat çekmemek için TCP protokolü izinlerini de veriyorum. Normal koşullarda ihtiyacımız yok.
sudo ufw reload
Komutunu yazarak firewall tarafından gerekli yeniden yüklemenin yapılmasını sağlıyorum.
Şimdi en kritik aşamalardan birisi olan IP FORWARDING işleminin yapılmasına sıra geldi. Bu sayede makinemiz kendi içinde VPN üzerinden gelen trafiği sunucunun internet bacağına aktaracak. İlgili paketleri aşağıdaki komut ile yüklüyorum ve doğruluyorum.
sudo apt install iptables net-tools -y
dpkg -l iptables net-tools
Şimdi ilgili paketin sorunsuz çalışması için gerekli izinleri vermek için sysctl dosyasını açıyorum ve #net.ipv4.ip_forward=1 satırının başındaki # işaretini kaldırıyorum.
sudo vim /etc/sysctl.conf
Ekran görüntüsü yukarıda ki gibi olmalıdır. Şimdi dosyayı kaydedip çıkıyorum ve yaptığım işlemi doğruluyorum.
sudo sysctl -p
Şimdi aşağıdaki komutu yazarak Wireguard servisini başlatıyorum.
sudo systemctl start [email protected]
Sunucu yeniden başlatıldığında servisin otomatik başlaması için aşağıdaki komutu giriyorum.
sudo systemctl enable [email protected]
Wireguard sunucunun durumunu aşağıdaki komut ile kontrol ediyorum aktif olduğunu görüyorum.
sudo systemctl status [email protected]
Buraya kadar sorunsuz şekilde gelmişsek sistem çalışıyor demektir.
Sunucuyu durdurmak için
sudo wg-quick down wg0
Sunucuyu başlatmak için
sudo wg-quick up wg0
Sunucunun mevcut bağlantı bilgilerini görmek için
sudo wg
Komutlarını kullanabilirsiniz. Örnek çıktı aşağıdadır.
Şimdi bağlanmak istediğimiz cihazın bağlantı bilgilerini aşağıdaki gibi dolduruyoruz. Eğer cihaz dosyadan içeriye eklemeyi destekliyorsa aşağıda ki gibi bir dosya oluşturup yükleyerek kendi VPN sunucumuzu kullanmaya başlıyoruz.
[Interface] PrivateKey = VPN KULLANACAK CİHAZA AIT PRIVATE KEY BILGISI Address = 10.10.11.2/32 DNS = 8.8.8.8 [Peer] PublicKey = WIREGUARD SUNUCUMUZUN PUBLIC KEY BILGISI AllowedIPs = 0.0.0.0/0 Endpoint = SUNUCU IP ADRESIMIZ:8080 PersistentKeepalive = 25
Şimdilik herşey bu kadar kolay gelsin…
Yorumlar (0)