Firewall kullanılan Captive Portal gibi sistemlerle giriş yapılan ağlarda ağ güveliğini sağlamak adına pek çok site ve hizmete erişim engellenmekte. Bu tarz bir durumda güvenli erişim sağlamanın bir yolu da elbette VPN kullanımı.
Ancak bazı durumlarda tanımlanan kurallar nedeni ile VPN bağlantıları engellenmekte.
İncelediğim kadarıyla pek çok ağda VPN hizmetleri engellenmesine rağmen 53/UDP yani DNS portunda bir filtreleme yapılmıyor. DNS portu üzerinden çalıştırdığım kendi VPN hizmetime şimdiye kadar test ettiğim tüm ağlarda erişim sağlayabildim. Üstelik bazı ağlarda bu VPN sayesinde uygulanan hız limitini aşabildiğimizi fark ettim.
Bu yazıda bunun nasıl yapılacağını sizlerle paylaşacağım. Önerilerinize açığım. Daha güzel yöntemler biliyorsanız siz de katkıda bulunabilirsiniz.
Ben bu çalışmada DigitalOcean üzerinden oluşturduğum sunucuyu kullanacağım. Şu anda aylık 4$ ile en düşük yapılandırmadaki sunucuyu oluşturmak mümkün. Github Education sayesinde bir yıl boyunca ücretsiz kullanmak da mümkün.
Ubuntu Server varsayılan olarak 53/UDP portunda DNS servisini çalıştırdığı için direkt kullanmamız mümkün olmayacaktır.
Bu nedenle yapacağımız ilk işlem bu servisi düzenleyerek portu boşa çıkarmak olacak.
lsof -i :53
Bu komutu kullanarak 53 portunu kullanan işlemleri görüntüleyebilirsiniz.
Eğer boş bir çıktı alıyorsanız bu port sizin kurulumunuzda aktif değil demektir. Bu durumda sonraki aşamaya atlayabilirsiniz.
DigitalOcean ile Ubuntu Server kullanarak sunucu oluşturduğunuzda muhtemelen fotoğraftaki gibi bir çıktı göreceksiniz.
-
Nano ile /etc/systemd/resolved.conf dosyasını açıyoruz.
nano /etc/systemd/resolved.conf#DNS ve #DNSStubListener=yes satırlarını fotoğrafta da olduğu gibi güncelliyoruz.
DNS=1.1.1.1 DNSStubListener=noDosyamızın son hali aşağıdaki gibi olmalı.
-
/etc/resolv.conf dosyasını /run/systemd/resolve/resolv.conf dosyasına link ile sembolik olarak bağlıyoruz.
ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf- ln komutu: Dosya veya dizin için bağlantı (link) oluşturur.
- -s: Sembolik (symbolic, yani soft) link oluşturur.
- -f: Var olan hedef dosya varsa (burada /etc/resolv.conf), onu zorla silip yenisini oluşturur.
- /run/systemd/resolve/resolv.conf: Kaynak dosya (gerçek DNS ayarlarını içeren dosya).
- /etc/resolv.conf: Sembolik bağlantının oluşturulacağı yer.
-
Sunucuyu yeniden başlatıyoruz.
reboot -
Portu kontrol ediyoruz.
lsof -i :53İşlemleri doğru bir şekilde uyguladıysak çıktımız şu şekilde olmalı:
Sizdeki çıktı da fotoğraftaki gibiyse VPN sunucusu kurulumuna geçebiliriz. Eğer farklı bir çıktı aldıysanız işlemleri tekrar edip doğruluğunu kontrol etmelisiniz.
WireGuard sunucusu kurmanın pek çok farklı yolu mevcut. Ben süreci kolaylaştırmak adına hazır bir script kullanarak bu işlemi gerçekleştireceğim.
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
- curl ile script i indirip dosyaya kaydediyoruz.
- chmod ile dosya izinlerini güncelliyoruz.
-
./wireguard-install.shile scripti çalıştırıyoruz. -
Script'i çalıştırdıktan sonra otomatik olarak sunucunun dış IP adresini tespit edecek. DigitalOcean kurulumunda burada sorun yaşamadan ilerleyebilirsiniz. Eğer farklı bir sunucu ile işlemi yapıyorsanız sunucununzun dış IP adresini kontrol ederek ilerleyebilirsiniz.

-
Server WireGuard port seçeneğine kadar diğer seçenekleri Enter'a basarak geçebilirsiniz. Dilerseniz kendi isteğinize göre değişiklikler yapabilirsiniz.
Server WireGuard port seçeneğine amacımızı yerine getirmek adına 53 portunu seçmeliyiz.
53 yazdıktan sonra Enter ile ilerlemeye devam ediyoruz.
-
Aşağıdaki ekranı gördüğümüzde sunucu yapılandırmasını tamamlamış oluyoruz. Burada bir kez daha gözden geçirerek Enter'a basıp kurulumu tamamlayabilirsiniz.
-
İlk istemcinin oluşturulması Kurulumun tamamlanmasının ardından bize ilk istemcinin adını soruyor. Bu sadece sizin cihazı tanımlayabilmeniz için gereken bir ad olacak o yüzden kendi isteğinize göre değiştirebilirsiniz.
İstemci adını yazdıktan sonra Enter ile ilerliyoruz. Sonraki aşamada istemcinin WireGuard içinde sahip olacağı IP adresini tanımlıyoruz. Otomatik doldurulan şekli ile bırakarak ilerleyebilirsiniz.
Enter ile ilerledikten sonra aşağıdaki gibi bir çıktı göreceksiniz.
Burada yer alan karekodu WireGuard mobil uygulaması ile taratarak sunucunuza bağlanabilirsiniz.
cat /root/wg0-client-test-istemcisi.confkomutu ile yapılandırmayı text olarak görebilir bilgisayarınızdan da giriş yapabilirsiniz. İstemci adını kendi belirlediğiniz ad ile değiştirmeyi unutmayın. -
Diğer işlemler
./wireguard-install.shkomutunu tekrar çalıştırarak aşağıdaki ekrana ulaşabilir ve burada klavye üzerinden seçim yaparak diğer işlemleri yapabilirsiniz.- Yeni kullanıcı ekleme işlemi
- Tüm kullanıcıları listeleme işlemi
- Kullanıcıyı silme işlemi
- WireGuard sunucusunu silme işlemi
- Menüden çıkış
-
53 Portunu Boşa Çıkarmak
https://www.linuxuprising.com/2020/07/ubuntu-how-to-free-up-port-53-used-by.html -
WireGuard Scripti
https://github.com/angristan/wireguard-install










