Tabi önce VPN ne için kullanılır kısaca ondan bahsedeyim. Malum, IT sektöründe olmayan çoğu insan, VPN’ni sadece yasaklı sitelere girmek için kullandığından tam olarak ne için kullanıldığını ve nasıl çalıştığını bilmiyor olabilir. Bunun için öncelikle temel internet terminolojisi yazıma göz atmanızı öneririm. Hatta internet hakkındaki bütün yazılarımı okursanız daha iyi olabilir. 😀

Aslında VPN nin amacı, global internet üzerinde yerel ağlar arasında güvenli bir tünel açmaktır. Ne demek bu tünel? Örneğin evimdeki bilgisayarımdan iş yerimdeki bilgisayarıma bağlanıp iş yerimdeki bilgisayar üzerinde çalışmak istediğimi varsayalım. Normalde bu iki bilgisayar aynı yerel ağ üzerinde olmadıklarından iş yerindeki bilgisayarıma direkt bir bağlantı sağlayamam. Tabi belki uzak masaüstü uygulamaları kullanabilirsiniz. Fakat bu uygulamalar için iki cihazı köprüleyen sunucular çalışır arka planda. Yani direkt bir bağlantı söz konusu değildir. Gerçi VPN’de de araya sunucu koyuyoruz ama neyse takılmayın oraya şimdi. VPN, şunu yapıyor; bu iki farklı yerel ağın aynı yerel ağlardaymış gibi çalışmasını sağlıyor. Bu yüzden VPN sunucusuna bağlanan dünyanın farklı yerlerinde ve farklı yerel ağlardaki cihazlar, sanki aynı yerel ağlardaymış gibi bir birine bağlanabiliyorlar. Bu sayede, dünyanın herhangi bir yerinden herhangi bir yerine yerel ağdaki bir makineye bağlanır gibi bağlanabiliyorsunuz. VPN, sunucusuna bağlandığınızda, sunucu size bir başka IP veriyor. Bu IP yi, bir başka yerel IP gibi kullanıyorsunuz.

VPN Mimarisi

Peki bu yapı teknik olarak nasıl çalışıyor? Eğer ingilizce biliyorsanız, olay burada detaylı bir şekilde anlatılmış. Fakat ben size özet geçeceğim. Normalde internet paketlerinde kaynak ve hedef IP adresleri vardır. VPN’ne bağlı olmadığımız durumlarda kaynak IP adresi, evimizdeki yönlendiricinin global IP adresiyken, hedef adres ise bağlanılacak cihazın IP adresidir. VPN bağlantısı kurduğumuzda internet paketi, IP katmanında şifrelenerek gönderilir. Yani hedef ve kaynak IP adresleri şifrelenmiştir. Aslında yapılan işlemi basitçe tarif edersek; gönderilip alınan internet paketleri IP katmanında başka güvenli bir IP katmanı ile enkapsüle edilir. Diğer tüm IP katmanı ise şifrelenerek bu yeni IP katmanının Payload’ı olarak gönderiliyor. Buna Ipsec deniyor. Bu sayede sizin yerel yönlendiricinizden çıkan pakete dışarıdan baktığınızda sadece VPN sunucusunun IP adresini görebilirsiniz. Böylece internette bağlandığınız yer ve sizin kaynak IP adresiniz gizli kalmış oluryor.

Şifrelenmiş Paket

Peki ben bu durumda nasıl internetteki diğer adreslere bağlanacağım diye bir soru gelebilir aklınıza. IP katmanı başka bir Ip katmanı ile enkapsüle ediliyor dedim ya. İşte VPN, bir yerel ağ gibi olmuş oluyor. Yani tüm dış bağlantıları VPN sunucusu üzerinden yapıyorsunuz. Bu durumda VPN sunucusu gateway gibi davranıyor. Yeni yerel IP adresi bu yeni Ipsec katmanı sayesinde gelmis oluyor. Diğer bir değişle, VPN sunucusu size bir IP verdiğinde, artık o VPN sunucusuna bağlı dünyanın herhangi bir yerindeki cihaza o VPN IP subnet’inden bağlanabilirsiniz. Sanki yerel ip gibi…

Şimdi gelelim yazının asıl amacına. Normalde kendi güvenli VPN sunucunuzu kurmak için, bir sanal makine kiralayıp onun üzerine OpenVPN kuruyorduk. Fakat, bir IOT cihaz aldınız veya bir sanal makine kiraladınız ve OpenVpn kuracam diye ömür çürütüyorsanız hiç uğraşmayın bence. Size geçen aylarda keşfettiğim ZeroTier den bahsedeyim. ZeroTier üzerinden VPN ile kendi sanal ağınızı kurup ağ ayarlarını ve alt yapısını oluşturabiliyorsunuz. Subnetler oluşturup belli subnetlerde firewall ayarlamaları falan yapabiliyorsunuz. Bunun yanında ücretsiz. Zaten sanırım en çok cezbeden tarafı, ücretsiz olması. Fakat, tabi ücretli paketleri de mevcut. Kişisel kullanım için ideal. Zerotier kullanarak yaptığım bir uygulamayı bu yazıda paylaşmıştım. Nasıl kullanacağınızı da bir zahmet kendiniz öğreniverin. Gayet basit zaten. Neyse bunu kullanıp dua edersiniz artık bana. Haydi kolay gelsin.

🙂

Yusuf

Yusuf

Bir Mühendis.

Önerilen makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Translate »