Anasayfa / Genel / CentOS üzerinde OpenVPN kurulumu

CentOS üzerinde OpenVPN kurulumu

Uzun süredir kişisel bloguma girdiğim içeriklerim seo, backlink ve dijital pazarlama ile alakalı önceleri bu blogu kişisel blog olarak kullanıyordum oysaki ancak bu sefer bir istisna olsun ve bu konuların dışında bir içerik girmek istedim…

Son zamanlarda sansür vb durumlar üzerine çözüm geliştirme çabalarına girdik, bir çoğumuzun aklına ilk gelen dns değiştirme ancak tüm engelleri dns değiştirerek aşmak pekte mümkün değil… Peki ya sonra? Dns değiştirmek işe yaramıyınca ne olduğu belirsiz proxy sunucularını kullanmayı denedik bunlar ya web tabanlı scriptler üzerinden yada http, https proxyler…

Tüm bunlardan sonra ise VPN kullanmaya başladık bir çoğumuz belli başlı marka olmuş vpn firmaları ile çalışırken bazılarımız kendi VPN sunucularını kurmak isteyebilir bu makalemde işte bende Centos kurulmuş sunucuya OpenVPN kurmaktan bahsedeceğim.

Öncelikle VPS kiralamamız gerekiyor ben ayda 5 dolara digitalocean kullanıyorum çokta memnunum. VPN için bence en ideal sunucu, lokasyon olarak amsterdam seçmenizi öneririm…

DigitalOcean Kayıt Ol! yandaki buton aracılığı ile kayıt olup 5 dolara vps kiralayıp sunucunuza centos kurmalısınız..

Kayıt işlemlerinizi yaptığınızı düşünüyorum…

Şimdi adım adım openvpn kurulumuna geçelim..

Önce üye olurken kullandığımız mail adresinize gelen vps bilgilerinizi kullanarak putty aracılığı ile root olun.
open vpn kurulumuİlk komut:
yum install wget
LZO RPM’i sunucumuza indirelim.
wget http://openvpn.net/release/lzo-1.08-4.rf.src.rpm
Şimdi repo için gerekli dosyaları indirelim. İşletim sisteminize uygun dosyayı seçmelisiniz. (64 bit ve CentOs 6.x Seçtiğinizi varsayıyorum.)
wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
Şimdi bu RPM’leri kurup repo’yu güncelleyelim.
rpmbuild --rebuild lzo-1.08-4.rf.src.rpm
rpm -Uvh *.rpm

Artık OpenVPN ‘i kurabiliriz.
yum install openvpn
EasyRSA klasörünü OpenVPN altına kopyalayım. (Bunu WinSCP kullanarakta yapabilirsiniz.)
cp -R /usr/share/doc/openvpn-2.2.2/easy-rsa/ /etc/openvpn/
Eğer ki Centos 6.x kullanıyorsanız aşağıdaki değişikliği yapmalısınız.
/etc/openvpn/easy-rsa/2.0/vars dosyasını nano veya pico ile açın.
nano /etc/openvpn/easy-rsa/2.0/vars

Yada WinSCP adlı program ile vps bağlanıp /etc/openvpn/easy-rsa/2.0/vars dosyasının üzerine sağ tıklayıp düzenle diyim.
Aşağıdaki satırı silin;
export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`

Yerine bu satırı yapıştırın ve kaydedin.
export KEY_CONFIG=/etc/openvpn/easy-rsa/2.0/openssl-1.0.0.cnf

Şimdi sertifikaları oluşturalım.
cd /etc/openvpn/easy-rsa/2.0
chmod 755 *
source ./vars
./vars
./clean-all

CA Sertifikasını oluşturalım. Bilgileri istediğiniz gibi doldurabilirsiniz.
./build-ca
Örnek aşağıdaki gibi.
Country Name: TR
State or Province Name: Turkey
City: ISTANBUL
Org Name: FurkanGökçöl
Org Unit Name: FurkanGökçöl
Common Name: FurkanGökçöl
Email Address: mailadresiniz@domainadi.com

Key Server Oluşturalım. Yukarıdaki sertifikayla aynı mantıkta dolduruyoruz ama A challenge password kısmını boş geçmemiz gerekiyor.
./build-key-server server

Diffie Hellman (ne işe yarar anlamadım) kuralım.
./build-dh

Şimdi konfigurasyon dosyasını oluşturalım.
nano /etc/openvpn/tcp443.conf

Aynı şekilde winscp ile bu dizinde manuel olarak komut girmeden dosya oluşturup düzenleyebilirsiniz..

İçerisiği aşağıdaki gibi dolduralım.
port 443#- port
proto tcp#- protocol
dev tun
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
reneg-sec 0
ca /etc/openvpn/easy-rsa/2.0/keys/ca.crt
cert /etc/openvpn/easy-rsa/2.0/keys/server.crt
key /etc/openvpn/easy-rsa/2.0/keys/server.key
dh /etc/openvpn/easy-rsa/2.0/keys/dh1024.pem
plugin /usr/share/openvpn/plugin/lib/openvpn-auth-pam.so /etc/pam.d/login #- Comment this line if you are using FreeRADIUS
#plugin /etc/openvpn/radiusplugin.so /etc/openvpn/radiusplugin.cnf #- Uncomment this line if you are using FreeRADIUS
client-cert-not-required
username-as-common-name
server 10.8.0.0 255.255.255.0
push "redirect-gateway def1"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 5 30
comp-lzo
persist-key
persist-tun
status tcp443.log
verb 3

Arkadaşlar portu ve tcp / udp protokolunu istediğiniz şekilde düzenleyin.. bana tcp 443 lazım. (Diğer makalemde çoklu port açmayı öğreteceğim.)

OpenVPN servisini başlatalım.
service openvpn restart
VPN kullanımı için IP Forwarding’i aktif etmek gerekiyor. Bu yüzden /etc/sysctl.conf dosyasını açalım ve aşağıdaki değeri 1 yapalım.
net.ipv4.ip_forward = 1
İşlemin aktif olması için aşağıdaki komutu çalıştıralım.
sysctl -p
Eğer ki VPS kullanıyorsanız aşağıdaki şekilde nat yapabilirsiniz.
iptables -t nat -A POSTROUTING -o venet0 -j SNAT --to-source 78.135.85.120
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -j SNAT --to-source 78.135.85.120

Artık OpenVPN servisini kullanabilirsiniz. Eğer ki root ile kullanmak istemiyorsanız kendinize aşağıdaki gibi bir kullanıcı açıp şifresini belirleyebilirsiniz.
useradd furkan
passwd furkan

Bu işlemlerden sonra bilgisayarınıza OpenVPN Client kurup config klasörü altına konfigurasyon dosyası ve sertifikanızı yüklemelisiniz. Konfigurasyon dosyası için “C:\Program Files\OpenVPN\config” klasörü altına server.ovpn adında bir metin dosyası oluşturup aşağıdaki bilgileri içerisine yapıştırın.

client
dev tun
proto tcp
remote 99.99.99.99 443# - Your server IP and OpenVPN Port
resolv-retry infinite
nobind
tun-mtu 1500
tun-mtu-extra 32
mssfix 1450
persist-key
persist-tun
ca ca.crt
auth-user-pass
comp-lzo
reneg-sec 0
verb 3

Birde yine bu klasöre /etc/openvpn/easy-rsa/2.0/keys/ altındaki ca.crt sertifikasını indirip yükleyin. Artık OpenVPN client ile bağlanabilir ve sorunsuz olarak kullanabilirsiniz.

Hepsi bu.. Artık OpenVPN kurabiliyoruz istediğimiz kadar kullanıcı ekleyebiliyoruz. İşletim sistemi farketmeksizin OpenVPN desteği olan bütün cihazlarımızda kullanabiliyoruz…

Değerli okurlarım takıldığınız yer olursa yorum olarak yazarsanız yardımcı olurum. Ek olarak kendi sunucumdan, ilk 20 yorum içinden çekiliş yaparak 3 kişiye 3 aylık ücretsiz ve log tutmayan vpn sağlayacağım…

Çekilişe katılmak ve ücretsiz vpn sahibi olmak için bu makaleyi aşağıda yer alan sosyal paylaşım butonları ile Google+, Facebook ve Twitter üzerinde paylaşıp; kendi e-posta adresinizle yorum yapmanız yeterlidir…

Saygılarımla..

Hakkında Furkan GÖKÇÖL

Akademik alanda kendimi acil sağlık sektöründe geliştirdim. Ancak şu anda dijital pazarlama ve özellikle de arama motoru optimizasyonu konusunda kurumsal firmalara ileri düzey çözümler sunuyorum.

İlginizi Çekebilir!

Yeni Yılında Uluslar Arası SEOzone Etkinliği Şişli’de

Geçtiğimiz yıllarda Türkiye’nin ilk uluslararası SEO Etkinliği olma özelliğini taşıyan SEOzone 2013 oldukça farklı ve …

15 yorum

  1. Güzel anlatım. 🙂

  2. Sizi takip ediyorum ve edeceğimde 😀

  3. paylaşım için teşekkürler

  4. Cok iyi bir yazi makale olmus 🙂 ancak ya basimiza bi is gelirse,bence herkezin yapabilecegi bisey degil (:

  5. bu blog çok güzelmiş yav

  6. teşekkürler böyle faydalı konulara devam etmelisin

  7. konu için teşekkürler çok lazım olmuştu

  8. Detaylı ve güzel bir paylaşım olmuş eline sağlık.

  9. teşekkürler anlatım için işime yaradı

  10. Selman Güzelbilen

    hocam senin anlattığınla https://www.bestvpn.com/blog/11447/roll-openvpn-server-vps-using-centos-6/ bu kurulum arasında ne fark varki, senin ki baya uzun olmuşta

%d blogcu bunu beğendi: