OpenVpn Kurulumu PDF Yazdır e-Posta
Salı, 08 Eylül 2009 12:50
Makale İçeriği
OpenVpn Kurulumu
Sayfa 2
Sayfa 3
Sayfa 4
Sayfa 5
Sayfa 6
Sayfa 7
Tüm Sayfalar

VPN (Virtual Private Network – Sanal Özel Ağ)

 

İnternet, dünya genelindeki bilgisayar ağlarını ve kurumsal bilgisayar sistemlerini birbirine bağlayan elektronik iletişim ağı.[1] TDK, İnternet sözcüğüne karşılık olarak Genel Ağ'ı önermiştir[2]. Oktay Sinanoğlu, Örütbağ adını önermiştir. [3][4] İnternet yerine zaman zaman sadece Net sözcüğü de kullanılır.”

 

İnternet’in tanımında yazanlar bunlar. İnsanlar ilk başta aynı bina veya aynı kampus alanı içinde bilgisayarları birbirine bağlamaya başladılar. Daha sonra bu lokal (yerel) networkler (ağ) birleşti ve daha büyük ağlar oluştu.

En nihayet bugün anladığımız manada Internet doğdu. Bilgisayar ağları büyüdükçe güvenlikleri de ister istemez azalır. Çok daha fazla uç noktanın olduğu bir ortam kontrolü daha zor ve suça daha açık bir hal alır. VPN kavramı işte böyle bir güvensiz ağ üzerinden iki uç noktanın veya iki ağın güvenli bir kanalla haberleşmesini tanımlar.

 

 


 

VPN Nedir?

 

VPN, Virtual Private Network'ün (Sanal Özel Ağ) kısaltması olup, ağlara güvenli bir şekilde uzaktan erişimde kullanılan bir teknolojidir. Sanal bir ağ uzantısı yarattığından uzaktan bağlanan makine konuk gibi değil, ağa fiziksel olarak bağlıymış gibi görünür.

Firmalar tarafından yaygın olarak kullanılan VPN, yöneticilerin, uzak ofislerin, bayi, acenta, satış temsilcilerinin güvenli bir şekilde özel ağlara bağlanmalarını sağlar.”

Evet, biraz daha vikipedya tanımı okudunuz. Şimdi aşağıya bir bakalım, fiziksel olarak birbirinden uzakta ve direkt kablo çekerek, radyo dalgası vs gibi çözümlerle bağlayamayacağımız iki ağımız var:

Bu durumda Telekom şirketlerinden destek alıp, bu iki networku kiralık hat, uydu vs gibi teknolojilerle bağlamamız mümkün. Böylece iki ağ birbiriyle haberleşebilir. Aradaki bağlantı Telekom şirketince bize özel olarak oluşturulacağı için üçüncü bir kişinin araya girmesi söz konusu olmaz. Tek bir problem var, maliyet. Böyle dedicated (adanmış – bize özel) hatların maliyeti oldukça yüksektir. Ayrıca bulunduğumuz lokasyona göre Telekom firmasının alt yapısı bize böyle bir bağlantı sağlamaya uygun olmayabilir.

Peki, aşağıdaki durumda ne yapacağız?

 

Bir ağımız var ve ona dışarıdan bağlanması gereken birçok kullanıcı var. Kullanıcılar hem çok farklı yerlerdeler hem de gezici (mobil) durumdalar. Her birine ayrı bir data hattı çekmemiz mümkün değil. Zaten mobil oldukları için sürekli farklı yerlerden ağa dâhil olmak istiyorlar.

Keşke, bu kullanıcılarla bizim ağımız arasında hazır kurulu başka bir ağ daha olsa biz de onu kullansak? Tahmin ettiğiniz gibi böyle bir ağ var: Internet.

Dolayısı ile üstteki örneğimizi şöyle bağlayabiliriz.

Ayrıca ikinci örnekte de, her kullanıcı bulunduğu noktadan internete girip, bağlanmak istedikleri ağa bağlanabilirler.

Buradaki sorun nedir peki? Bir bulut simgesiyle gösterdiğimiz Internet’e bizden başka birkaç milyar insan daha bağlı. Hımm… Bu bir sorun. Internet üzerinden geçen trafiği izleyip, dataları çalmak veya datayı değiştirerek orijinalliğini bozmak her zaman mümkün. Dolayısı ile bu iki network arasında gerçekleşecek veri akışı, Internet gibi güvensiz bir ortamdan hiçbir önlem alınmaksızın aktarılmamalıdır.

Vpn işte bu noktada devreye girer. Bu iki network arasında, internet üzerinden bir VPN (Virtual Private Network / Sanal Özel Ağ) oluşturabiliriz. Sanal Özel Ağ ile kastedilen, her iki uç noktaya yerleştirilen bir donanım veya yazılım vasıtasıyla, bir tarafın göndereceği datanın önce şifrelenip, ancak karşı tarafa ulaştığında çözülüp kullanılacak şekilde gönderilmesini ve alınmasını sağlamaktır. Böylece data güvensiz ortamda iken ele geçirilse bile şifrelenmiş olacağı için kötü niyetli birisi bu datayla bir şey yapamaz.

Vpn’in diğer önemli bir özelliği ise güvenlikten öte iki ağı sanal bir hat üzerinden bağlamasıdır. Böylece uç noktalar aynı yerel ağa bağlı gibi çalışabilirler. Örnek vermek gerekirse, diyelim ki bizim için güvenlik hiç önemli değil ve bir client internet üzerinden bir server’a bağlanacak. Peki server’ın nesine bağlanacak? Dosya paylaşımına mı, o zaman aradaki bağlantı cihazlarında (adsl modem gibi) dosya paylaşımı için gerekli portları yönlendirmemiz lazım. Peki başka bir kaynağa daha bağlanmak isterse, örneğin ftp sunucusuna girmek istiyor veya on-line oyun oynayacaksınız o zaman da farklı yönlendirmeler yapmanız lazım. Kısacası her bir uygulama için adsl modem üzerinde (veya bağlantıyı sağlayan cihaz neyse) tek tek bu uygulamaları tanımlamak zorundayız. Bazı uygulamalar da (on-line oyunlar gibi) bu şekilde port yönlendirmesi (NAT-PAT) ile düzgün çalışmaz. Bunun yerine client ve server arasında sanki upuzun bir network kablosu varmış gibi bir VPN tüneli oluşturursak, iki taraf artık aynı hub’a bağlı çalışan bilgisayarlar gibi yani sanal bir yerel ağ üzerinden haberleşebilirler.

 


 

 

Nasıl VPN Yapılır - OpenVPN?

Internet’in yaygınlaşması ve buna bağlı olarak Vpn bağlantıların daha çok tercih edilmesiyle birlikte buna yönelik ürünler ve çözümler artmıştır.

 

Vpn oluşturmak için iki uçta da evinizdeki ADSL modem gibi bir modem kullanabileceğiniz gibi (VPN destekleyen ADSL modemler), binlerce dolarlık cihazlar kullanarak da bu işi yapabilirsiniz.

 

Peki, hiçbir donanım kullanmadan hatta ücretsiz bir yazılımla son derece güvenli ve kurulumu kolay bir VPN çözümü var desem?

 

OpenVPN açık kaynak kodlu, SSL kullanarak yüksek güvenlikli VPN kurmanıza yarayan ücretsiz bir yazılımdır.

 

İlk başta açık kaynak kodlu olarak geliştirilmiş, daha sonra ticari versiyonları da çıkmıştır. Hatta büyük projeler için OpenVpn kullanan donanımsal ürünler de mevcuttur.

 

Ancak hala ücretsiz versiyonu kullanılabilir.

 

OpenVPN Kurulumu

OpenVpn yazılımı 1MB boyutuyla boyundan büyük bir iş yapıyor diyebiliriz. Yazılımı indirip kurmadan önce yapımızı inceleyelim.

 

Şimdi aşağıdaki gibi bir konfigürasyonumuz olsun:

 

 

 

Burada internete bağlı iki bilgisayarımız var. Bunlardan birisine Client (terminal) diğerine Server (sunucu) diyelim. Client bilgisayarımız Adsl modemi ile internete çıkıyor. Kendi IP adresi 192.168.1.2, modemi de ağ geçidi olarak görüyor. Hatta IP adresini otomatik olarak modemden alıyor (dolayısı ile bir sonraki bağlantıda farklı bir IP alabilir, client tarafında bu bizim için bir problem değil).

 

Server tarafında da benzer bir yapı var. Ancak Server bilgisayar IP adresini DHCP’den otomatik almamalı ve bizim elle verdiğimiz sabit IP değerlerine sahip olmalı. Ayrıca Server tarafında modemin Internet’e bağlanırken aldığı dış IP yani gerçek Internet IP’si de sabit olursa işimiz kolaylaşır. Çünkü Client bağlanırken bu dış IP’ye bağlantı kuracak, modem dışarıdan gelen bu bağlantıyı iç tarafta Server bilgisayarın IP’sine yönlendirecek. Dolayısı ile Server tarafında IP adreslerinin değişmez, sabit IP olarak tanımlanması gerekiyor.

 

Server tarafında ADSL modemin arayüzüne girip, 1194 nolu UDP portunu Server bilgisayarın iç IP adresine NAT yapalım. OpenVpn standart olarak 1194 UDP portundan bağlantı kuruyor. Bunu değiştirmek bizim elimizde, birazdan göreceğimiz gibi hangi portun kullanılacağını biz ayarlıyoruz. Ancak şimdi değiştirmeden standart ayarları yapalım:

 

 

 

Şimdi OpenVPN kurulumuna geçelim. Önce bu küçük yazılımı indirelim:

 

http://openvpn.se/download.html

 

bu adresten

 

Installation Package (Both 32-bit and 64-bit TAP driver included):

openvpn-2.0.9-gui-1.0.3-install.exe

linkine tıklayarak yazılımı indirelim.

 

Server tarafına da, Client tarafına da aynı yazılımı kuracağız. Yazılım içinde yapacağımız ayarlarla bir taraf Client diğer taraf Server olacak.

 


Server Kurulumu

İndirdiğimiz yazılımı önce server olan bilgisayara kuruluyoruz. Kurulum esnasında hiçbir ayarı değiştirmeden, Next diyerek kurulumu yapalım. Sürücü yükleme ile ilgili bir uyarı geldiğinde Yes diyerek devam edin. OpenVpn ağ bağlantıları içine bir tane sanal ağ bağdaştırıcı ekliyor.

 

 

Bu sanal bağdaştırıcının ismini benim yaptığım gibi OpenVpn yaparsanız, diğerleriyle karıştırmazsınız.

 

Ayrıca Bilgisayarım>sağ tık>yönet>hizmetler altından ulaşabileceğiniz gibi, bilgisayara bir Windows servisi yükleniyor. Ancak nedense bu servis otomatik başlayacak şekilde ayarlı gelmiyor. Server’da bunu otomatik hale getirmeliyiz. Böylece bilgisayar restart etse bile bağlantı kabul etmeye hazır hale gelsin.

 

 

 

OpenVpn kurulduğunda aşağıdaki gibi bir dizin yapısı oluşuyor:

 

 

 

Bizim için “config” ve “easy-rsa” dizinleri önemli. Config klasöründe bağlantı için gerekli ayarları belirteceğimiz dosyalarımız ve SSL bağlantı için gereken sertifika dosyalarımız bulunuyor. Yani OpenVpn bu klasörü tüm ayarlarını öğrenmek için kullanıyor.

 

“easy-rsa” dizinini ise SSL bağlantı için gerekli sertifika dosyalarını oluşturmak için kullanacağız. Burada oluşan dosyaları OpenVpn’in kullanabilmesi için “config” klasörüne taşımamız gerekecek.

 

Şimdi “config” dizinine girelim ve notepad ile bir text dosya oluşturalım. Ve içine aşağıdakileri yazıp kaydedelim. Dosyanın ismini server.ovpn yapalım.

 

 

## server.ovpn ---- Açıklama satırı ##
## 1194 nolu porttan bağlantı kabul etmek için bekleyecek ##
port 1194
 
## udp protokolunu kullanıyoruz, udp 1194’de bekleyecek ##
proto udp
 
## oluşturulan sanal ağ bağdaştıcısının tipi ##
dev tun 
 
## ca sertifikasının ismi ##
ca ca.crt
 
## ca sertifikasının ismi ##
cert server.crt  
 
## server key dosyasının ismi ##
key server.key 
 
## pem dosyasının ismi, bu dosyaları birazdan oluşturacağız ##
dh dh1024.pem 
 
## client ile server arasında kurulacak ağ’da kullanılacak IP blogu ##
server 10.8.0.0 255.255.255.0
 
## eğer bazı clientlara hep aynı IP adresinin atanmasını istiyorsak, ##
## gerekli bilgileri ipp.txt dosyasına yazıp, bu dosyayı da config dizine##
## koyariz, burada bu dosyanın ismini belirtiyoruz ##
ifconfig-pool-persist ipp.txt 
 
## client bağlandığında, client’a IP adresiyle beraber diğer DHCP ##
## özellikleri de, yollanabilir – ilk başta bunları inaktif yapıyoruz##
## push "route 192.168.0.0 255.255.255.0"
## push "dhcp-option WINS 192.168.0.1"
## push "dhcp-option DNS 192.168.0.1"
## push "dhcp-option DOMAIN acme.com.local"

## bağlantı kurulduktan sonra, belli bir süre data aktarımı olmadığında 
## bağlantının kesilmemesi için #
keepalive 10 120

## verinin aktarılırken sıkıştırılması ##
comp-lzo
 
## server’a aynı anda bağlanabilecek client sınırı
max-clients 4

# diğer ayarlar
persist-key
persist-tun
status openvpn-status.log
verb 3

 

Ben burada bizim için gerekli temel ayarları aldım. Bu dosya içinde daha birçok ayar girilebilir. C:\Program Files\OpenVPN\sample-config içinde örnek config dosyalarını inceleyebilirsiniz.

 


 

 

 

Server için sertifikaların oluşturulması

Şimdi OpenVpn’in muhtemelen zor gözüken ama yapması 1 dakika süren işlemine sıra geldi. OpenVpn daha önce bahsettiğimiz güvenli ağı oluşturmak için SSL (Secure Socket Layer) kullanmaktadır. Bu teknoloji güvenli web sitelerinde gezerken kullandığımız teknolojidir. Bankacılık, alışveriş vs gibi sitelerde web sitesinin adresi “http” yerine “https” olur ve web browser da güvenli bağlantı üzerinde olduğumuzu belirten bir simge ortaya çıkar.

 

OpenVpn’de aynı şifreleme tekniğini kullanarak iki nokta arasında aktarılacak veriyi şifreler. Diğer Vpn çözümlerinde bu şifreleme işi farklı yöntemlerle yapılmaktadır. Ancak OpenVpn diğerlerine göre hem yüksek bir güvenlik sağlar hem de, her türlü network üzerinde çalışır. Ara cihazlarda (modemler, firewallar gibi) karmaşık ayarlar yapmak gerekmez. Sadece server tarafında yukarıda yazdığımız gibi tek bir port yönlendirmesi yeterlidir. Client tarafında ise hiçbir donanımsal ayar gerekmemektedir.

 

OpenVpn’in basit bir çalışma mantığı var. İlk başta Linux platformu için geliştirilip sonra Windows’a uyarlandığı için Windows’ta alışık olduğumuz gibi grafik ara yüzlerden “tıklayarak” işlem yapmıyoruz. Bunun yerine dos moduna geçip komutlarla işlem yapacağız.

 

 

Şimdi server için gerekli sertifikaları oluşturalım:

 

Önce başlat>çalıştır>cmd yazarak komut istemine geçin. Daha sonra aşağıdaki komutlarla openvpn’in kurulu olduğu dizinin içindeki “easy-rsa” dizinine ulaşın:

 

 

Şimdi aşağıdaki komutları sırasıyla çalıştıralım:

 

C:\Program Files\OpenVPN\easy-rsa> init-config
C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> clean-all

Şimdi şunu yazalım :

 
C:\Program Files\OpenVPN\easy-rsa> build-ca

 

Size bazı değerler soracak bunları sadece enter’a basarak geçiyoruz. Sadece en son sorduğu “Common Name” değerine server’in bilgisayar ismini giriyoruz.

 

 

Bizim Server bilgisayarımızın bilgisayar ismi de “Server” olduğu için böyle girdik.

 

Şimdi C:\Program Files\OpenVPN\easy-rsa\keys klasörüne bakarsak burada bazı dosyaların oluştuğunu göreceğiz.

 

 

ca.crt isimli dosyayı C:\Program Files\OpenVPN\config dizinine kopyalıyoruz.

 

Şimdi yine komut ekranında aşağıdaki komutları girelim :

 

C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> build-key-server server

 

“Common Name” sorduğunda yine “Server” yazıyoruz. Bu komutlarla da yine C:\Program Files\OpenVPN\easy-rsa\keys klasörü içinde server.crt ve server.key isimli iki dosya oluşacak. Bunları da aynı ca.crt dosyası gibi “config” içine kopyalıyoruz.

 

En son

 

C:\Program Files\OpenVPN\easy-rsa> build-dh

 

komutunu çalıştırıyoruz. Bu komut bizi biraz bekletiyor. İşlem tamamlandığında “keys” içinde oluşan son dosyamızı yani dh1024.pem dosyamızı da “config” içine kopyalıyoruz.

 

 

Client Kurulumu

 

Sıra geldi “client” kurulumumuza. Programı kuruluyoruz. Daha sonra C:\Program Files\OpenVPN\config içine client.ovpn isimli bir text dosya oluşturup, içine aşağıdakileri yazıp kaydediyoruz.

 

## acme.ovpn ##
client
proto udp
dev tun
remote 85.85.85.85 1194
resolv-retry infinite
nobind
persist-key
persist-tun
ca ca.crt
cert client.crt
key client.key
comp-lzo
verb 3

 

Burada önemli olan nokta “remote 85.85.85.85 1194” satırı, burada 85.85.85.85 olan bizim örnek IP adresimiz yerine siz server tarafında modemin aldığı gerçek Internet IP adresini yazmalısınız. Bu ip adresini öğrenmek için Server bilgisayarından “whatismyip.com” sitesine girebilirsiniz. Böylece client Internet üzerinden Server tarafına nasıl ulaşacağını bilecektir.

 

Client Sertifika Oluşturma

 

Şimdi tekrar server bilgisayarımızın başına geçiyoruz. Her bir client için gerekli sertifika da server üzerinde oluşturuluyor çünkü. Aşağıdaki komutları çalıştırıyoruz:

 

C:\Program Files\OpenVPN\easy-rsa> vars
C:\Program Files\OpenVPN\easy-rsa> build-key client

 

Bu komut ile yine “keys” klasörü içinde client.crt ve client.key isimli dosyalar oluşuyor. Bu iki dosyayı ve ilk başta oluşturduğumuz ca.crt dosyasını, bir şekilde (usb memory, mail vs) client bilgisayarına taşımamız ve oradaki config klasörü içine kopyalamamız gerekiyor.

 

Aynı yöntemi kullanarak, başka client’lar için de sertifika ve key dosyalarını oluşturup (client2, alipc, muhasebevpn gibi) birden fazla client’ın server’a bağlanmasını sağlayabilirsiniz.

 

Bağlantı

 

Evet, kurulum bitti.

 

Şimdi client tarafında sağ alt köşedeki simgeye sağ tıklayıp, connect yaptığımızda bağlanmamız lazım :

 

 

 

 

Client tarafında test etmek için yine komut isteminde

 

Ping 10.8.0.1

 

yapabiliriz.  Hatırlarsanız yukarıda VPN içinde kullanılacak IP aralığı olarak 10.8.0.0 belirlemiştik. Bu durumda Server her zaman 10.8.0.1 IP’sini kendisi alacak, daha sonra bağlananlara diğer IP adreslerini verecektir.

 

Şimdi ağ yapımıza bakarsak:

 

 

Aramızda ki sanal-yerel ağ ile iki uç noktayı birleştirmiş durumdayız.

 

Client’tan karşı uçtaki ağa erişmek

 

 

Şimdi işi biraz daha zorlaştıralım, Client bilgisayardan Server2 ve Server3 bilgisayarlarına erişmeye çalışalım.

 

Hatırlarsanız başlarda server.ovpn dosyasını oluştururken “Server kendisine bağlanan client’a bir IP atar ve aynı zamanda diğer IP parametrelerini de atayabilir.”  demiştik ancak bu parametreleri kapalı durumda bırakmıştık.

 

## client bağlandığında, client’a IP adresiyle beraber diğer DHCP ##
## özellikleri de, yollanabilir – ilk başta bunları inaktif yapıyoruz##

## push "route 192.168.0.0 255.255.255.0"
## push "dhcp-option WINS 192.168.0.1"
## push "dhcp-option DNS 192.168.0.1"
## push "dhcp-option DOMAIN acme.com.local"

 

 

Şimdi buradan bizim için gerekli parametreleri aktif hale getirip gerekli değişikliği yapalım. Ama önce Client bilgisayarda dos komut isteminde aşağıdaki komutu girelim:

 

Route print

 

Bu komut bize Client bilgisayarın routing tablosunu dökecektir. Burada dikkat edersek Client bilgisayar kendi bağlı olduğu yerel ağı (192.168.1.0), Vpn ile bağlı olduğu ağı (10.8.0.0) bilmektedir yani bu iki ağa ulaşmak için direkt bağlantısı (yerel ağ bağlantısı ve vpn bağlantısı) vardır. Bunun haricindeki tüm ağlara ulaşmak içinse “varsayılan ağ geçidinde” yazan atlama noktasını yani kendi tarafındaki ADSL modemin iç IP’sini bilmektedir.

 

Bizim amacımız Client’ın Vpn ile bağlandığı taraftaki 192.168.2.0 networküne ulaşması olduğu için, öncelikle bu bilgiyi ona VPN bağlantısını yaptığı anda vermeliyiz. Dolayısı ile Server tarafında, server.ovpn dosyası içinde

 

push "route 192.168.2.0 255.255.255.0"

komutunu aktifleştirelim yani başındaki diyez (#) işaretlerini kaldırıp, adresi kontrol edelim. İlk başta oluşturduğumuz server.ovpn içinde 192.168.0.0 yazıyordu, bunu 192.168.2.0 yapmayı unutmayın!

 

Şimdi Client bağlandığı anda, route tablosuna bu ekleme yapılacak. Dolayısı ile 192.168.2.0 networküne erişmek için 10.8.0.1 (server’ın VPN bacağı) gitmesi gerektiğini bilecek. Ancak Server bilgisayarının da kendisine gelen bu isteği iç networke yönlendirmesi yani route etmesi yani bir router gibi çalışması lazım. Bunu sağlamak için Server bilgisayarımızda bir registry ayarı yapmamız gerekiyor.

 

Server bilgisayarda, Regedit’i açıp :

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

 

içinde IPEnableRouter değerini 1 yapıyoruz. Server bilgisayarı restart ediyoruz.

 

Peki işimiz bitti mi? Hayır.

 

Client bilgisayardan IP paketi yola çıkıyor, 192.168.2.3 bilgisayarına gidecek diyelim, önce VPN’i geçiyor. Server bilgisayara ulaşıyor o da router olduğu için paketi iç networkteki 192.168.2.3 IP’li Server2 bilgisayarına iletiyor. Buraya kadar güzel, ancak Server2 bilgisayarı kendisine 10.8.0.0 networkünden gelen bu pakete nasıl cevap vereceğini bilmiyor ki ! Server2 bilgisayarı da Client’ın ilk halinde olduğu gibi sadece bağlı olduğu yerel ağa ulaşmayı biliyor bir de default gateway (varsayılan ağ geçidi) olarak ADSL modemi gördüğü için kendisine gelen bu 10.8.0.0 paketini ADSL modem üzerinden cevaplamaya çalışacaktır.

 

Bu durumda bizim ya gidip Server2, Server3 ve diğer ağdaki tüm bilgisayarlara tek tek “eğer size 10.8.0.0’lı bir paket gelirse, buna cevap vermek için 192.168.2.2 (server bilgisayarı) kullanmanız gerekir” diye elle route girmeliyiz veya zaten hepsinin varsayılan ağ geçidi olarak gördüğü ADSL modemin ayar ekranına girip böyle bir sabit route eklemeliyiz.

 

 

 

Bunu yaptığımız anda artık Client bilgisayardan, Server bilgisayara erişebildiğimiz gibi aynı zamanda Server tarafında iç ağda bulunan tüm bilgisayara da erişebiliriz. 

 


 

OpenVpn Güvenliği ve Sertifika İptali

 

Buraya kadar kurulumu yaptık ve umarım siz de başarılı bir şekilde çalıştırdınız. Dikkat ederseniz Openvpn yazılımını indiren ve server tarafının IP adresini bilen herhangi birisi bağlantı yapamamaktadır. Ancak bizim server üzerinde oluşturduğumuz sertifika dosyalarını kendi bilgisayarına kopyalarsa bağlantı yapabilir. Server üzerinde oluşturduğumuz ca.crt ve ca.key dosyaları önemlidir. ca.crt dosyasını her bir client’a dağıtırken, ca.key dosyasını ise güvenli bir ortamda saklamalıyız. Aynı şekilde server.crt ve server.key dosyaları da dışarıya sızmamalıdır.

 

Burada öğrendiklerimizle istediğimiz kadar client için sertifika oluşturup dağıtarak birden fazla client'ın bağlantı yapmasını sağlayabiliriz. Bu şekilde VPN ile bağlanan clientlar artık yerel ağın bir üyesi gibi, uzak masaüstünden, dosya paylaşımına kadar normal bir yerel ağda ne yapabiliyorlarsa yapabilirler. Ancak aradaki bağlantının yerel ağ gibi 100Mbit/Sn olmadığını, sonuçta server ve client tarafının Internet bağlantı hızıyla sınırlı olduğumuzu unutmamak gerekir. Örneğin client server'dan kendine bir dosya kopyalama işlemi yaptğında, bu dosya Internet üzerinden geçmek zorunda olduğu için ancak aradaki bağlantı hızıyla orantılı olarak aktarılacaktır. Özellikle ADSL bağlantılarda upload hızları düşük olduğu için, client kendisi 4mbit adsl ile internete bağlı bile olsa, server'dan dosya çekerken, server'ın upload hızından yüksek bir hıza erişemez. Aynı şekilde birden fazla bağlantı yapıldığından bu bant genişliği de ortak kullanılmaya başlanacaktır. Böyle bir bağlantıda ya web tabanlı, çok veri aktarımı yapmayan bir uygulama kullanılmalı veya client'lar VPN'den sonra iç ağda bir terminal server'a uzak masaüstü bağlantısı yapıp, sadece ekran görüntüsü aktarılacak şekilde çalışmalıdırlar.

 

Peki daha önce sertifika verdiğimiz birisinin artık sisteme girmesini istemiyorsak ne yapacağız?

 

Komut isteminde yukarıda yaptığımız gibi “easy-rsa” dizinine geçelim;

 

C:\Program Files\OpenVPN\easy-rsa> vars

C:\Program Files\OpenVPN\easy-rsa> revoke-full Client

 

yazalım.

 

Çıkan yazıların son satırında;

 

error 23 at 0 depth lookup:certificate revoked

 

gördüğümüzde Client isimli sertifika’nın iptal edildiğini anlıyoruz. Şimdi yine “keys” dizini içinde crl.pem isminde bir dosya oluştu. Bu dosyayı tahmin ettiğiniz gibi “config” dizinine kopyalıyoruz.

 

Ayrıca server.ovpn dosyasına da

 

crl-verify crl.pem

satırını ekliyoruz. Böylece bağlanan Client’ın sertifikası kontrol edilecek ve eğer iptal edilmiş bir sertifika ise bağlanamayacaktır.

 

Son Sözler

 

OpenVpn basit kurulumu ve efektif çalışması ile eminim çok işinize yarayacaktır. Büyük projelerde kullanılacaksa, http://www.untangle.com adresinden indirebileceğiniz, kendi başına ayrı bir yazı konusu olan, yine açık kaynak bir firewall, uzaktan erişim ve saldırı tespit/önleme yazılımı olan Untangle’ı kullanabilirsiniz. Untangle içinde OpenVpn çözümü ücretsiz olarak yer almaktadır ve sertifika dağıtımını kolaylaştıran ve Client’ların konfigürasyonunu ve izlenmesini sağlayan araçlar bulunmaktadır.

 

OpenVpn'in güvensiz ağlar üzerinde (örneğin şirket içi kablosuz ağlar gibi) güvenli bir bağlantı oluşturmak içinbir çok farklı uygulaması olabileceğini de hatırlatmak istiyorum.

 

Hepinize kolay gelsin…

 

09/2009

Bu yazı turkcenet.org için hazırlanmıştır.

Kaynak gösterilerek kullanılabilir.

 

Son Güncelleme: Salı, 15 Eylül 2009 13:22
 
Make Text Bigger Make Text Smaller Reset Text Size

Aktif Ziyaretçiler

Şu anda 55 konuk çevrimiçi

Üye Girişi

Bilgisayar ağları ve Windows Hakkında Bilgiler...