Raspberry Pi VPN Erişim Noktası: Basit Bir VPN Yönlendirici Kurulumu

Bu yazı, PiMyLifeUp - Raspberry Pi VPN Access Point: Setup a Basic VPN Router kaynağından Türkçe'ye çevrilerek hazırlanmıştır.

Bu Raspberry Pi VPN erişim noktası eğitiminde, bir WiFi erişim noktasında VPN'i nasıl kuracağımızı inceleyeceğiz.

Raspberry Pi VPN Erişim Noktası

Bu eğitim, önceki Kablosuz Erişim Noktası eğitimimizin üzerine inşa edilir, ancak önemli bir değişiklik yapar: tüm trafiği bir VPN üzerinden yönlendirmek.

Bir VPN Erişim Noktası, herhangi bir VPN yazılımını desteklemese bile, istediğiniz herhangi bir cihazı bir VPN üzerinden çalıştırmanın hızlı ve kolay bir yolunu sağlar. Yapmanız gereken tek şey, o cihazı Raspberry Pi kablosuz erişim noktanıza bağlamaktır ve tüm trafiği otomatik olarak bir VPN tüneli üzerinden yönlendirilecektir.

Bu eğitim, kablosuz erişim noktası üzerine önceki eğitimimizin üzerine inşa edilir, ancak büyük bir değişiklik yapar: tüm trafiği bir VPN üzerinden yönlendirmek. Bu proje esasen bir VPN yönlendiricisidir ve kurulumu inanılmaz derecede kolaydır; öncelikle az önce bağlantısını verdiğim ilk eğitimi takip etmeniz gerekecek.

Eğitimimiz için, bu VPN erişim noktasını VyprVPN veya NordVPN hizmetlerini kullanarak nasıl kuracağınızı göstereceğiz. Eğitimimiz için çeşitli VPN sağlayıcılarını test ederken, bunların hem iyi hız hem de iyi gizlilik politikalarını korurken en güvenilir olanlardan bazıları olduğunu bulduk.

Raspberry Pi'ye ağınızın dışından bağlanıp onu bir VPN olarak kullanmayı tercih ederseniz, göz atmanız gereken oldukça kolay takip edilebilir bir Raspberry Pi VPN eğitimim var.

Bunun için VPN hizmetinizi kullanmayı seçebilirsiniz; başka sağlayıcılar için önerileriniz varsa, bu sayfanın altına bir yorum bırakabilirsiniz.

Erişim Noktası İçin OpenVPN'i Hazırlama

VPN Erişim Noktamızı kurmak için, öncelikle Kablosuz Erişim Noktası eğitimimizi takip etmeniz gerekecek, çünkü bu, Raspberry Pi'nizi bu eğitim için doğru şekilde ayarlayacaktır.

Bu eğitim için, VPN hizmetinizi bir VPN Erişim Noktası kurmak için nasıl kullanabileceğinizi göstereceğiz.

Bu eğitimde değineceğimiz iki VPN, VyprVPN ve NordVPN'dir. Bu ikisini seçtik çünkü her ikisinin de güvenilir, hızlı ve iyi gizlilik politikalarına sahip olduğunu gördük.

VPN'in kendisi için, OpenVPN yazılımını kullanacağız; değineceğimiz iki VPN de OpenVPN protokolü için tam destek sunuyor ve çalıştırmak için gereken .ovpn dosyalarını bize sağlıyor.

1. VPN Erişim Noktamızı kurmaya başlamadan önce, öncelikle aşağıdaki iki komutu çalıştırarak en son paketlere sahip olduğumuzdan emin olalım.

sudo apt update
sudo apt upgrade

2. Artık tamamen güncel olduğumuza göre, dayanacağımız OpenVPN yazılımını kurabiliriz.

Bunu terminalde aşağıdaki komutu çalıştırarak yapabiliriz:

sudo apt install openvpn -y

3. Şimdi Raspberry Pi VPN erişim noktamızı çalışır hale getirmek için ihtiyacımız olan her şeyi saklayacağımız "openvpn" dizinine geçelim.

Dizin değiştirme komutunu kullanarak bu dizine geçebiliriz.

cd /etc/openvpn

4. Artık "openvpn" dizinine geçtiğimize göre, devam etmek için yetkilendirme dosyamızı oluşturmamız gerekiyor.

Oluşturacağımız bu "auth.txt" dosyası, VPN hizmetiniz için kullanıcı adınızı ve şifrenizi saklayacaktır.

Aşağıdaki nano komutunu çalıştırarak dosyayı oluşturmaya başlayın.

sudo nano /etc/openvpn/auth.txt

5. Şimdi aşağıdaki örneğimizde gösterildiği gibi kullanıcı adınızı ve şifrenizi bu dosyaya ekleyin.

OpenVPN'i, VPN hizmetinize giriş yapmak için bu dosyadan okuyacak şekilde ayarlayacağız.

username
password

6. Giriş bilgilerinizi dosyaya girdikten sonra, CTRL + X, ardından Y ve sonra Enter tuşuna basarak dosyayı kaydedip çıkabiliriz.

NordVPN İçin OVPN Dosyalarını Alma

1. auth.txt dosyasını oluşturduğumuza göre, NordVPN'den gerekli ovpn dosyalarını almamız gerekecek.

Bu dosyaları kullanabilmeniz için, önce NordVPN'e kaydolmanız gerektiğini unutmayın.

Ancak bunu yapmadan önce, öncelikle terminalde aşağıdaki komutu çalıştırarak doğru dizinde olduğumuzdan emin olalım.

cd /etc/openvpn

2. Şimdi NordVPN için OpenVPN dosyalarını almak için, NordVPN web sitesindeki ovpn bölümüne gitmeniz gerekiyor.

Bu web sitesinde kullanmak istediğiniz belirli sunucuyu bulun, "Download UDP" düğmesine sağ tıklayın ve "Copy Link Address" seçeneğine basarak bağlantıyı kopyalayın.

Bu URL'yi, kullandığımız URL'nin yerine aşağıdaki komuta yapıştırın.

Örneğimizde, au514 sunucusunu kullanacağız.

sudo wget https://downloads.nordcdn.com/configs/files/ovpn_legacy/servers/au514.nordvpn.com.udp1194.ovpn

3. Şimdi az önce indirdiğiniz dosyayı yeniden adlandırmanız en iyisidir. Dosyayı yeniden adlandırmak, eğitimin ilerleyen kısımlarında kullanmayı kolaylaştıracaktır.

Ayrıca dosya türünü ".ovpn"den ".conf"a değiştirmeniz gerekiyor. Bu değişiklik, otomatik başlatmayı etkinleştirdiğimizde OpenVPN'in dosyayı algılayıp yükleyebilmesi için gereklidir.

Aşağıdaki örneğimizde gösterdiğimiz gibi, dosyayı hızlıca yeniden adlandırmak için mv komutunu kullanabilirsiniz.

au514.nordvpn.com.udp1194.ovpn dosya adını sadece au514.conf olarak kısalttık. Bu şekilde çok daha kolay işlenir, ama yine de hangi sunucuya bağlanmak için olduğu hakkında yeterli bilgi verir.

sudo mv au514.nordvpn.com.udp1194.ovpn au514.conf

4. Dosyayı yeniden adlandırdıktan sonra, "VPN erişim noktasını kurma" başlıklı bölüme geçebilirsiniz.

Bu bölüm, sizi OpenVPN'i fiilen kullanma sürecinde yönlendirecek ve trafiği onun üzerinden nasıl yönlendireceğinizi de gösterecektir.

VPN Erişim Noktasını Kurma

1. Artık kullanıma hazır bir .ovpn dosyamız olduğuna göre, Raspberry Pi VPN erişim noktamızın çalışması için üzerinde bazı değişiklikler yapmamız gerekiyor.

Bu komuttaki dosya adını kendi dosyanızla değiştirdiğinizden emin olarak aşağıdaki komutu çalıştırarak başlayın.

sudo nano au514.conf

2. Şimdi, bu dosyanın içinde, aşağıdaki satırı aramanız ve üzerinde değişiklik yapmanız gerekiyor. Bu satırı bulmayı kolaylaştırmak için CTRL + W kullanabilirsiniz.

Bu değişiklik, OpenVPN istemcisi dosyayı açtığında "auth.txt" dosyanızı yüklemesi gerektiğini bilmesini sağlayacaktır.

Bulun

auth-user-pass

Şununla değiştirin

auth-user-pass auth.txt

3. Dosyayı değiştirdikten sonra, CTRL + X, ardından Y ve son olarak ENTER tuşuna basarak kaydedebilirsiniz.

4. Bunu yaptıktan sonra, OpenVPN'in VPN sağlayıcımıza (örneğimizde bu NordVPN olacak) başarılı bir bağlantı kurduğundan emin olmak için artık test edebiliriz.

Bunu yapmak için, aşağıdaki komutu çalıştıracağız; .conf (.ovpn) dosyasını bir önceki adımda değiştirdiğiniz dosyayla değiştirdiğinizden emin olun. Örneğimiz için "au514.conf" dosyamızı kullanacağız.

sudo openvpn --config "/etc/openvpn/au514.conf"

Bu komut, bağlantıyı kurarken epey metin çıktısı verecektir; aramak isteyeceğiniz asıl metin aşağıda gösterdiğimize benzer bir şeydir.

Buna benzer bir çıktı alırsanız, bu VPN sağlayıcınızın sunucularına başarılı bir bağlantı kurduğunuz anlamına gelir.

/sbin/ip route add 81.171.69.2/32 via 192.168.40.1
/sbin/ip route add 0.0.0.0/1 via 172.20.32.1
/sbin/ip route add 128.0.0.0/1 via 172.20.32.1
Initialization Sequence Completed

5. OpenVPN istemcisini test amaçlı çalıştırdığımıza göre, artık onu sonlandırıp açılışta başlamasını ayarlamaya ve trafiğin VPN tüneli üzerinden yönlendirilmesi için güvenlik duvarı yönlendirmemizi değiştirmeye geçebiliriz.

Şu anda çalışan işlemi durdurmak için CTRL + C tuşuna basın.

Ağ Kurallarını Ayarlama

6. VPN'imiz doğru çalıştığına göre, Kablosuz Erişim Noktası eğitimimizde yaptığımız gibi Ethernet üzerinden değil, wlan0 bağlantısını tünelimiz üzerinden yeniden yönlendirmek için iptables kullanmamız gerekiyor.

Ancak bunu yapmadan önce, mevcut nftables'ımızı temizlememiz gerekecek. Bunu Raspberry Pi'de aşağıdaki komutu çalıştırarak yapabiliriz.

sudo nft flush ruleset

7. Bir sonraki adımımız, wlan bağlantısını tünel üzerinden yönlendirecek bazı kurallar ayarlamaktır. Bu üç ayrı komut gerektirecek.

İlk komut bir NAT tablosu oluşturur, sonraki bir postrouting zinciri kurar ve sonuncusu bir masquerade kuralı oluşturur.

sudo nft add table ip nat
sudo nft add chain ip nat postrouting '{ type nat hook postrouting priority srcnat; policy accept; }'
sudo nft add rule ip nat postrouting oifname "tun0" masquerade

8. Bunu yaptıktan sonra, NFT Tabloları her okunduğunda okunmaları için nftables kurallarımızı kaydedelim.

Bunu aşağıdaki komutu kullanarak başarabiliriz. Bu komut, şu anda etkin olan kural setini "/etc/nftables.conf" dosyasına aktarır.

sudo sh -c 'nft list ruleset > /etc/nftables.conf'

9. Bu değişikliği yaptıktan sonra, NFTables servisinin etkin olduğundan da emin olmalıyız. Neyse ki bu oldukça kolay, sadece aşağıdaki komutu çalıştırabiliriz.

Servisi etkinleştirmek, Raspberry Pi'niz açıldığında servisin başlatılmasını sağlar.

sudo systemctl enable --now nftables

OpenVPN'i Açılışta Bağlanacak Şekilde Ayarlama

10. Artık güvenlik duvarımız kurulu ve hazır olduğuna göre, OpenVPN istemcisinin yapılandırma dosyasını ayarlamamız gerekiyor.

Aşağıdaki komutu çalıştırarak dosyayı düzenlemeye başlayın.

sudo nano /etc/default/openvpn

11. Bu dosyada aşağıdaki satırı bulun ve hem yorum satırı olmaktan çıkaracak hem de "all"ı bu bölümün 1. Adımında değiştirdiğiniz dosyanın adıyla değiştirecek şekilde değiştirin.

Örneğimizi aşağıda görebilirsiniz.

Bulun

#autostart="all"

Şununla değiştirin

autostart="au514"

12. OpenVPN yapılandırma dosyasında gerekli değişiklikleri yaptıktan sonra, CTRL + X, ardından Y ve son olarak ENTER tuşuna basarak kaydedip çıkabilirsiniz.

13. Artık Raspberry Pi'nizi yeniden başlatarak her şeyin çalışıp çalışmadığını görebilmeniz gerekir.

Açılışta, otomatik olarak VPN'inize bağlanmalı, tüneli kurmalı ve ardından kablosuz erişim noktanızdan gelen trafiği tünel üzerinden iletmelidir.

sudo reboot

VPN erişim noktanızın amaçlandığı gibi çalıştığını doğrulamanın en kolay yolu, IP adresinizin VPN üzerinden bağlı olmayan cihazlardan farklı olup olmadığını kontrol etmektir.

Alternatif olarak, VPN sağlayıcınız muhtemelen web sitelerinin üstünde "Protected" olup olmadığınızı gösterir; örneklerimizin her ikisi, NordVPN ve VyprVPN, bu geri bildirimi sağlar.

DNS Sızıntılarını Önleme

DNS sızıntısı yaşadığınızı fark edebilirsiniz, ancak küçük bir ayar Raspberry Pi'nizde bunu kolayca düzeltebilir. Değişiklik, DNS'imizi internet servis sağlayıcısı yerine Cloudflare'in genel DNS'ini kullanmaya zorlamaktır.

1. Raspberry Pi'nizde DNS sızıntılarının oluşmasını önlemeye yardımcı olmak için, dhcpcd yapılandırma dosyasını daha iyi bir DNS sağlayıcısına bağlanacak şekilde değiştirmek isteyeceğiz.

İsterseniz bunu bir Pi-Hole sunucusu veya başka bir şey kullanacak şekilde de ayarlayabilirsiniz.

sudo nano /etc/dhcpcd.conf

2. Dosyayı açtıktan sonra, aşağıdaki satırı bulana kadar gözden geçirmek isteyeceksiniz.

#static domain_name_servers=192.168.0.1

3. Bu satırı bulduktan sonra, satırın başındaki kare işaretini (#) kaldırın ve DNS IP'sini "192.168.0.1"den "1.1.1.1"e değiştirin.

static domain_name_servers=1.1.1.1

4. Bu değişikliği yaptıktan sonra, CTRL + X, Y ve ardından ENTER tuşuna basarak kaydedip çıkabilirsiniz.

5. Şimdi aşağıdaki komutu girerek Pi'nizi yeniden başlatın.

sudo reboot

6. ipleak.net adresine gidin ve DNS'inizin artık sızdırmadığını kontrol edin. Hâlâ sızdırıyorsa, WebRTC'nin sızdırmadığından emin olmak isteyebilirsiniz.

Sonuç

Umarız artık VyprVPN veya NordVPN hizmetine OpenVPN tüneliniz üzerinden tüm trafiğini yönlendiren, tam işlevsel bir Kablosuz Erişim Noktanız vardır.

Elinizde kararlı ve hızlı bir VPN bağlantısı ve daha güvenli bir bağlantıya geçmenin kolay bir yolu kalmalı.

Bu Raspberry Pi VPN erişim noktası eğitimiyle ilgili herhangi bir sorunla karşılaşırsanız veya geri bildiriminiz varsa, lütfen aşağıya yorum bırakmaktan çekinmeyin.