Kendi VPN sunucunuzu kurarak internet üzerindeki kısıtlamaları aşabilir ve verilerinizi daha güvenli hale getirebilirsiniz. Bu rehberde, basit bir Ubuntu sunucusu üzerinde L2TP/IPsec VPN kurulumunu adım adım nasıl yapacağınızı anlatacağım.
İlk olarak bir adet ubuntu vps server a ihtiyacınız olacak. En ucuzundan ve en basitinden bir adet sunucu kurabilmek için aşağıda vereceğim servis sağlayıcıları kullanabilirsiniz. Kurulumu tamamladıktan sonra terminal ile bağlanarak işlemlerimizi gerçekleştireceğiz.
Hetzner(Referansım ile 20 Euro Kazanabilirsiniz)
https://hetzner.cloud/?ref=2MnBQpOVPAqO
DigitalOcean
https://www.digitalocean.com
Aruba Cloud
https://www.arubacloud.com
Ubuntu sunucunuza L2TP/IPsec VPN kurarak, cihazlarınıza uygulama kurmadan VPN kullanabilirsiniz. İşte adım adım nasıl yapacağınız:
1. Gerekli Paketlerin Yüklenmesi
Öncelikle xl2tpd
, strongSwan
, ve ppp
paketlerini yükleyin:
sudo apt-get update
sudo apt-get install xl2tpd strongswan ppp
2. IPsec Konfigürasyonu
/etc/ipsec.conf dosyasını düzenleyin:
sudo nano /etc/ipsec.conf
Aşağıdaki ayarları ekleyin:
config setup
charondebug="ike 2, knl 2, cfg 2"
uniqueids=no
conn L2TP-PSK-noNAT
authby=secret
pfs=no
auto=add
keyingtries=3
dpddelay=30
dpdtimeout=120
dpdaction=clear
rekey=no
ikelifetime=8h
keylife=1h
type=transport
left=SUNUCU_IP_ADRESİNİZ
leftprotoport=17/1701
right=%any
rightprotoport=17/%any
ike=aes256-sha1-modp1024!
esp=aes256-sha1!
3. Pre-Shared Key (PSK) Belirlenmesi
/etc/ipsec.secrets dosyasına, PSK olarak kullanılacak anahtarı ekleyin:
sudo nano /etc/ipsec.secrets
Aşağıdaki satırı ekleyin:
SUNUCU_IP_ADRESİNİZ %any : PSK "gizli-anahtar"
4. L2TP Ayarları
/etc/xl2tpd/xl2tpd.conf dosyasını düzenleyin:
sudo nano /etc/xl2tpd/xl2tpd.conf
Aşağıdaki ayarları ekleyin:
[global]
ipsec saref = yes
[lns default]
ip range = 192.168.30.2-192.168.30.254
local ip = 192.168.30.1
require chap = yes
refuse pap = yes
require authentication = yes
name = l2tpd
pppoptfile = /etc/ppp/options.xl2tpd
length bit = yes
5. PPP Ayarları
/etc/ppp/options.xl2tpd dosyasını oluşturun ve aşağıdaki ayarları ekleyin:
sudo nano /etc/ppp/options.xl2tpd
require-mschap-v2
ms-dns 8.8.8.8
ms-dns 8.8.4.4
asyncmap 0
auth
crtscts
lock
hide-password
modem
mtu 1410
mru 1410
debug
name l2tpd
proxyarp
lcp-echo-interval 30
lcp-echo-failure 4
6. Kullanıcı Ekleme
/etc/ppp/chap-secrets dosyasına kullanıcı adınızı ve şifrenizi ekleyin:
sudo nano /etc/ppp/chap-secrets
Aşağıdaki ayarları ekleyin:
kullanıcı_adı * şifre *
7. Hizmetleri Yeniden Başlatma
Son olarak, IP iletimini etkinleştirin ve hizmetleri başlatın:
sudo sysctl -w net.ipv4.ip_forward=1
sudo service strongswan restart
sudo service xl2tpd restart
8. iPhone Üzerinde Bağlantı
iPhone’unuzda, Ayarlar > Genel > VPN > VPN Ekle yolunu izleyin. Protokol olarak L2TP’yi seçin ve sunucu IP adresinizi, kullanıcı adınızı, şifrenizi ve PSK’yı girerek VPN bağlantısını kurun.
Bu adımları takip ederek, telefonunuza uygulama yüklemeden kendi VPN sunucunuzdan güvenli bir şekilde internete erişebilirsiniz
Sorunlar ve çözümleri;
Failed to restart strongswan.service: Unit strongswan.service not found.
1. StrongSwan Paketini Yeniden Yükleme:
Öncelikle, strongSwan’ı yeniden yüklemeyi deneyin:
sudo apt-get install --reinstall strongswan
2. Servis İsmini Kontrol Etme:
Bazı sistemlerde strongSwan servisi farklı bir isimle yüklenebilir. Aşağıdaki komutla yüklü servisleri listeleyerek doğru servis ismini bulun:
systemctl list-units --type=service | grep strong
Bu komut, strongSwan servisine benzer isimde bir servis olup olmadığını gösterecektir. Örneğin, strongswan-swanctl.service veya ipsec.service gibi isimlerle karşılaşabilirsiniz. Eğer bulursanız, o servis ismiyle yeniden başlatmayı deneyin:
sudo systemctl restart ipsec.service
3. Servis Dosyasını Manuel Olarak Eklemek:
Eğer servis dosyası eksikse, aşağıdaki komutları kullanarak strongSwan servisini manuel olarak ekleyebilirsiniz:
sudo systemctl enable strongswan
sudo systemctl start strongswan
Bağlandınız ve internet bağlantınız yoksa;
1. IP Yönlendirmesini Kontrol Etme:
Sunucunuzda IP yönlendirmesinin etkin olduğundan emin olun. Bu ayarların etkin olup olmadığını kontrol edin ve gerekirse aşağıdaki komutlarla etkinleştirin:
sudo sysctl -w net.ipv4.ip_forward=1
Bu ayarın kalıcı olması için “/etc/sysctl.conf” dosyasına aşağıdaki satırı ekleyin:
İlk olarak
sudo nano /etc/sysctl.conf
net.ipv4.ip_forward = 1
3. NAT Yapılandırması
NAT ayarını yapmak için aşağıdaki komutu kullanın:
sudo iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
Bu komut, sunucunuzdaki gelen tüm trafiğin eth0 arayüzünden çıkarken NAT ile maskeleme yapılmasını sağlar.
4. Gerekli IPTables Kurallarını Ekleyin
Gerekli UDP portlarına izin veren kuralları eklemek için aşağıdaki komutları çalıştırın:
sudo iptables -I INPUT -p udp --dport 500 -j ACCEPT
sudo iptables -I INPUT -p udp --dport 4500 -j ACCEPT
sudo iptables -I INPUT -p udp -m policy --dir in --pol ipsec -m udp --dport 1701 -j ACCEPT
5. IPTables Kurallarını Kalıcı Hale Getirme
Yukarıdaki iptables kurallarını kalıcı hale getirmek için:
sudo apt-get install iptables-persistent
sudo netfilter-persistent save
sudo netfilter-persistent reload
6. PPP Arayüzü Üzerinde Yönlendirme
PPP (Point-to-Point Protocol) arayüzü üzerinden yönlendirme yapmak için aşağıdaki komutu kullanabilirsiniz:
sudo iptables -A FORWARD -i ppp0 -o eth0 -j ACCEPT
sudo iptables -A FORWARD -i eth0 -o ppp0 -m state --state RELATED,ESTABLISHED -j ACCEPT