Ubuntu Üzerine VPN Server Kurulumu (OpenVPN ile Kolay, Hızlı Kurulum)

Ubuntu üzerine OpenVPN server kuracağız ve çok basit olacak.

Digitalocean anlatımlarında (Ubuntu 14.04 için OpenVPN kurulumu) (Ubuntu 16.04 için OpenVPN kurulumu) her şeyi adım adım anlatıyor. Biz uzun anlatımda yapılan birçok şeyi kendiliğinden yapacak bir sh dosyası kullanacağız. Haydi başlayalım!

    • Ubuntu server'ınıza root olarak giriş yapın. Ben putty kullanıyorum. ubuntu-login
    • Klasik başlangıç: root yetkileri verilir (her seferinde sudo yazmamak için) ve update yapılır.
    • sudo -s
    • apt-get update

 Böyle yazması gerekiyor. Hata gibi görünüyor, değil mi? Böyle yazıyorsa sorun yok demektir, diğer adıma geçebilirsiniz. Böyle yazmıyorsa, server’ınızda TUN/TAP özelliği açık değil demektir. VPS’niz OpenVZ üzerine ise ve VPS manager’ı SolusVM ise SolusVM’de bu seçeneği görebilirsiniz. “On” yapın.vpn-enable-tun-tap

openvpn-install.sh dosyasını GitHub’da incelemek isterseniz tıklayın.

Bundan sonra 1-2 dakika kadar bir işlem yapabilir. Ondan sonra (daha önce OpenVPN kurduysanız) şöyle bir soru soracak size: openvpn-already-installed“OpenVPN kurulmuş, ne yapalım?” Öncekini kaldırmanızı öneriyorum ben, “3” e basıp enterlayın, sonra da “y” , enter.

3’ü seçip kaldırmıştık, şimdi tekrar yüklemek için aynı komutu yine gireceğiz:

wget git.io/vpn --no-check-certificate -O openvpn-install.sh; bash openvpn-install.sh

“IP Address:” karşısındakini silip VPS’nizin IP adresini yazın. Benimki 13.81.167.131 gibi bir adres. “Which protocol do you want for OpenVPN connections?” OpenVPN için hangi protokolü kullanmak istediğinizi soruyor. UDP olsun: 1 ve enter. “What port do you want OpenVPN listening to:” karşısında 1194 yazıyor, isterseniz 443 olarak ya da istediğiniz bir portla değiştirebilirsiniz. “What DNS do you want to use with the VPN?” yani diyor ki, bu VPN ile hangi DNS’i kullanmak istiyorsun? Ben Google DNS’ini kullanıyorum, size de öneririm. “Client name:” “client” olarak kalabilir, enterlayın geçin.

Tekrar enterladıktan sonra kurulumu yaparken sizi birkaç dakika bekletecek.

  1. Başlat menüsünde Powershell yazarak Windows Powershell'i açın.
  2. pscp.exe kullaniciadi@IPadresi:client.ovpn C:\Users\KullaniciAdiniz\Desktop\client.ovpn
    Burada kullaniciadi yerine sunucuza bağlanırken kullandığınız kullanıcı adınızı, IPadresi yerine sunucunuzun IP adresini, client.opvn yerine başka bir şey yazdıysanız onu değiştirin, KullaniciAdiniz yerine bilgisayarınızda oturum açmış olduğunuz kullanıcı adını (bilmiyorsanız C:\Users yolunu izleyin, orada kullanıcı adınız görünecektir.) yazın ve bu düzenlenmiş halini satırı PowerShell'e yapıştırın.
  3. Sunucunuzun şifresini isteyecektir, girip enterlayın.
  4. "client.ovpn               | 8 kB |   8.0 kB/s | ETA: 00:00:00 | 100%" yazıyorsa tamamdır, client.ovpn dosyası bilgisayarınızda masaüstüne kaydedilmiş demektir.

Şimdi OpenVPN indireceğiz ve client.ovpn dosyasını kullanacağız. Android ve iOS’a da indirebilirsiniz, ben Windows için anlatmaya devam ediyorum.

  1. OpenVPN client'ini indirin.
  2. client.ovpn dosyanızı "C:\Program Files\OpenVPN\config" buraya atın.
  3. OpenVPN client'ini açın. Sonrası resimde.
  4. Bu kadar. VPN'e bağlı olduğunuza emin olmak için buradan IP adresinizi ve IP adresinin lokasyonuna bakabilirsiniz.
  5. Bundan sonra bir hata alırsanız, openvpn simgesine sağ tıklayıp resimdeki "Günlüğe Bak"a tıklayın ve çıkan metin belgesindeki son satırları Google'da aratın. Ben de çok hatayla karşılaştım, neyse ki Google'da araştırarak çözüme ulaştım. Bağlantı sorunu yaşıyorsanız "1194" portunu açmamış olabilirsiniz (azure, google cloud vs. için geçerli bu). Sunucunun sağlayıcısından destek alabilirsiniz.

VPN kurulumunda sık karşılaşılan hataların çözümleri

  1. Portlar dışarıdan kapalı olabilir. Dışarıdan dediğim, örneğin Microsoft Azure ile açtıysanız Azure panelinden portu açmanız gerekir. (Settings -> Networking yolunu izledikten sonra Inbound ve Outbound Port kurallarından 1194'e ya da seçtiğiniz porta izin vermelisiniz.
  2. Portlar içerinden kapalı olabilir. Yani, ufw kullanarak bazı izinler vermelisiniz.
    1. sudo -s ile root yetkilerini alın.
    2. ufw enable ile ufw'yi aktifleştirin, "y", enter.
    3. ufw allow 1194/udp ile 1194 portunu UDP olarak açın.
    4. ufw allow OpenSSH ile SSH portuna da izin verin.
    5. ufw status ile açtığınız portlara göz atabilirsiniz.
    6. Tekrar bağlanmayı deneyin.
  1. sysctl net.ipv4.ip_forward=1
  2. iptables -I FORWARD -j ACCEPT
  3. iptables -t nat -I POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERADE
  4. Bağlanmayı tekrar deneyin.