OpenVPN ile VPN Sunucusu Kurmak
Dün geceden itibaren internette genel anlamda bir yavaşlık olması ve özellikle Facebook, Twitter, Youtube gibi mecralara erişimde kesintiler yaşanması sebebiyle VPN kullanma ihtiyacı duydum. IPVanish, Hidemyass gibi VPN servislerini daha önceden kullanmıştım. Ancak bu servisleri istediğim zaman pasifleştirip aktifleştiremediğim ve isteğime göre yapılandıramadığım için bu sefer tercih etmedim. Bu rehberde yapılabilecek en basit haliyle kendi sanal sunucunuzu nasıl VPN servisi haline getirebileceğinizi anlatacağım.
Bu rehberde geliştiriciler için cloud hizmeti sunan Digital Ocean VPS’lerinden 5 dolarlık VPS paketini kullandım. (VPN için 5 dolarlık paket fazlasıyla yeterli.)
Henüz bir Digital Ocean hesabınız yoksa şuradan kayıt olarak 2 ay bedava VPS kullanabileceğiniz 10 dolarlık kuponu edinebilirsiniz.
VPS Oluşturma
Digital Ocean’da Creat Droplet
butonuna tıklayarak yeni bir sanal sunucu oluşturuyoruz. Droplet Hostname
için herhangi bir isim girebilirsiniz, VPN olarak kullanacağınız için bu çok fark etmiyor. Select Size
kısmından 5 dolarlık paketi seçiyoruz. Select Region
kısmında VPS’imizin lokasyonunu belirleyeceğiz. Genelde Amsterdam önerilse de ben Frankfurt lokasyonunu seçmenizi öneririm. Select Image
kısmında VPS’imizde kullanacağımız işletim sistemini seçeceğiz. Ubuntu 14.04 x64 sürümünü seçin.
Temel düzeyde diğer seçeneklere dokunmanıza gerek yok. İşlemleri yaptıysanız Create Droplet
butonuna tıklayarak VPS’i oluşturabilirsiniz. Buradan bir sayfaya yönleneceksiniz. 50-60 saniye içerisinde VPS’iniz oluşturulacak ve VPS bilgileriniz kayıt olduğunuz mail adresinize gelecek.
VPN için VPS Yapılandırma
Mail adresinize gelen IP, user ve pass bilgileriyle VPS’imize bağlanmamız gerekiyor. Bunun için Windows’ta Putty, Mac OS’te için iTerm2, Linux’te terminali kullanabilirsiniz.
SSH istemcinize VPS’inizin IP, user ve pass bilgilerini girerek VPS’imize bağlanmanız gerekiyor. İlk girişte sizden şifre standart tanımlanmış şifrenizi yenisiyle değiştirmenizi isteyecek. Bir şifre belirleyip değiştirin.
OpenVPN Access Server Kurulumu
OpenVPN Access Server
3 adımda OpenVPN’i sanal sunucunuza kurmanıza yarayan, aynı ekip tarafından geliştirilen bir çözümdür. Bu rehberde en basit yolu izleyeceğimiz için VPN’imizi OpenVPN Access Server ile kuracağız.
OpenVPN Access Server’ın sanal sunucunuza uygun en güncel sürümünü bulmak için şu sayfayı ziyaret edin. En güncel sürümler en aşağıda yer alıyor. Sisteminize uygun en güncel sürümün bağlantısını kopyalayın. Ben bu rehberi hazırlarken en güncel OpenVPN AS sürümünün adı openvpn-as-2.0.19-Ubuntu14.amd_64.deb
bağlantısı ise http://swupdate.openvpn.org/as/openvpn-as-2.0.19-Ubuntu14.amd_64.deb
idi.
SSH ile sanal sunucunuza bağlanın ve aşağıdaki komutu vererek Ubuntu 14.04, 64 bit sisteme uygun paketi sunucunuza indirin:
sudo wget http://swupdate.openvpn.org/as/openvpn-as-2.0.19-Ubuntu14.amd_64.deb
İndirdiğiniz openvpn-as-2.0.19-Ubuntu14.amd_64.deb
isimli dosya ile OpenVPN AS kurmak için aşağıdaki komutu verin:
dpkg -i openvpn-as-2.0.19-Ubuntu14.amd_64.deb
Kurulum tamamlandığında çıktı olarak şu şekilde iki tane adres verilecektir:
Admin UI: https://VPSIPadresi:943/admin
Client UI: https://VPSIPadresi:943/
Admin UI
adresi yönetim paneline erişmek için kullanacağımız adrestir. Client UI
ise VPN’i kullanacak kişilerin erişebileceği paneldir.
Şimdi OpenVPN paneli için şifre belirlememiz gerekiyor. Aşağıdaki komutu terminalde verin ve şifrenizi belirleyin:
sudo passwd openvpn
Şifreyi belirledikten sonra https://VPSIPadresi:943/admin
adresine giderek OpenVPN Admin UI’e giriş yapalım. Karşımıza kullanıcı adı ve şifre isteyen bir ekran çıkacak. Kullanıcı adı openvpn
olarak tanımlanıyor. Şifre kısmına da sudo passwd openvpn
komutuyla belirlediğiniz şifreyi gireceksiniz. Admin UI üzerinde VPN’inizi yönetebilirsiniz. Şimdilik burada bir işimiz yok, böyle bir panelin olduğunu bilmeniz yeterli. Araştırma yapmadan bu panelde işlem yapmanızı önermem.
VPN’i Cihazlarda Kullanmak
Şimdi https://VPSIPadresi:943/
adresine bağlanarak Client UI
sayfasına giriş yapalım. Burada kullanıcı adı olarak openvpn
şifre olarak ise yine sudo passwd openvpn
komutuyla önceden belirlediğiniz şifreyi girip aşağıdaki login
seçeneğini seçerek panele giriş yapın.
Not: Bazı tarayıcılarda Client UI
giriş ekranı doğru açılmayabiliyor. Eğer yükleme sayfası geçmez ve giriş ekranı karşınıza gelmezse başka bir tarayıcı ile giriş sayfasını görüntülemeyi deneyin.
Client UI
‘e başarıyla giriş yaptıysanız karşınıza Windows, Mac OS X, Linux, iOS ve Android için OpenVPN uygulamalarının linklerinin bulunduğu bir sayfa karşınıza çıkacak. Bilgisayarınız için işletim sisteminize uygun olarak OpenVPN uygulamasını indirin ve uygulamayı kurduktan sonra kullanıcı adı (openvpn) ve şifrenizi girerek giriş yapın.
Android ve iOS için mağazadan OpenVPN uygulamasını telefonunuza yükleyin. Ardından Client UI
sayfasında belirtilen Yourself (user-locked profile)
linkine tıklayarak client.ovpn
dosyasını indirin. Telefonunuza OpenVPN uygulamasını kurduktan sonra seçeneklerden import menüsüne gelin ve bu dosyayı uygulamaya aktarın. Ardından kullanıcı adı ve şifrenizi girip connect
butonuna bastığınızda VPN aktifleşmiş olacak.
Güncelleme (21.03.2016): Son dönemlerde yaşanan talihsiz olaylarla birlikte gelen erişim engelleri ve kısıtlamalar VPN’e olan ihtiyacı tekrar arttırdı. Yazıda bahsettiğim Digital Ocean’a -benim de şu an kullandığım- daha uygun bir alternatif buldum. Sadece VPN kurup kullanmak için IPXCore‘un VPS çözümlerini inceyebilirsiniz.