| Yazan: Hayrullah Kolukisaoglu,
Tarih: 08-09-2007 16:01
|
Okunma Sayısı : 1342  |
Beğenilme : Yok |
Internet yani güvensiz olarak bildigimiz bir network üzerinden güvenli iletisimi IPSec VPN ile birlikte, internet baglantimizin zaten varoldugunu da varsayarsak ucuz bir sekilde saglayabiliriz. Bu makalemizde Cisco Routerlari kullanarak Site – To – Site VPN konfigürasyonunun nasil yapilacagini inceleyecegiz. Makale boyunca VPN’in mantigindan çok konfigürasyonu üzerinde duracak olmamiza ragmen genel bazi bilgileride vermeye dolayisiyla VPN ile yeni tanisan arkadaslara da yardimci olmaya çalisacagim.
VPN tabii ki çok derinlemesine incelenmesi gereken bir konudur ancak verdigimiz küçük bilgiler ile mantiginin anlasilacagini düsünüyorum. Ben zaman zaman bilgiler verecek olsam da IPSec VPN ile ilgili hiç bilgisi olmayan arkadaslar bu makaleyi incelemeden önce mantigiyla ilgili bir incelemeyi yapmalarini tavsiye ederim. IPSec VPN’in kurulmasi 4 asamada özetlenebilecek bir mekanizma ile gerçeklesir.
1. VPN trafigini tetikleyecek yani VPN kurulmasini saglayacak trafik Routera gelir. Dolayisiyla bizim Router üzerinde bir access-list yardimiyla bu trafigi tanimlamamiz gerekecektir.
2. Routerlar arasinda güvenli Key degisimini saglayacak IKE Phase 1 olarak adlandirdigimiz oturum kurulur ve Internet Key Exchange gerçeklesir.
3. IPSec parametlerinin belirlendigi ve IKE Phase 2 olarak nitelendirdigimiz oturumu açilir.
4. Son olarak Data IPSec tünelimiz üzerinden noktalar arasinda tranfer edilir.
Bu noktada IKE Phase 1 ve IKE Phase 2’nin sagladiklari üzerinde biraz daha durmak istiyorum. IKE Phase 1 Key degisimi için policylerin kararlastirilmasi ve VPN komsularinin kimlik dogrulamasini saglar. Kimlik dogruluma için Pre-Shared Keyler yada Certificate’lar kullanilabilir. Bu makaledeki uygulamamiz sirasinda Pre-Shared Key kullanacagiz. Ayrica burada key degisimi için Diffie-Hellman Key Exchange grubunu belirleyecegiz.
 Diffie Hellman algoritmasi ile iki nokta arasinda Public Keyler degisilir. Bu algoritma her noktanin, karsi tarafin Public Key’i ve kendi Private key’i ile olusturacagi Shared Key’in ayni olmasini saglar. Bu sayede son derece güvenli keyler olusturulabilmektedir.
IKE Phase 2 Transform Setlerin iki nokta arasinda kararlastirildigi asamadir. Transform Seti kisaca data transferi sirasinda kullanilacak algoritma ve protokoller olarak tanimlanabilir. Genel olarak SA (Security Associations) olarak adlandirilan IKE Phase 2 konfigürasyonu sirasinda belirlenen bilgiler arasinda Destination IP Address, Protocol (ESP veya AH), Encryption ve Authentication algoritmalari, Mode (Transport yada Tunnel) ve Key Lifetime gibi tanimlamalarimiz yer alacaktir.
Uygulamamizda iki nokta arasinda Cisco Routerlara grafik arayüz saglayan SDM ile IPSec VPN baglantisi kuracagiz. Once IKE Phase 1 ve 2 için bizim seçecegimiz parametreleri özetleyelim.
IKE Phase 1
Authentication: Pre-Shared
Hashing: SHA-1
Encryption: AES (128 Bit)
Group: Diffie Hellman Group 1
IKE Phase 2 (Transform Set)
Integrity: ESP – MD5
Encryption: ESP - AES (192 Bit)
Konfigürasyon sirasinda kullanacagimiz topoloji ve IP adresleri asagidadir.
 Bu topoloji içerisinde KADIKOY ve ALTUNIZADE Routerlari arasindaki IPSec VPN baglantisi için KADIKOY Routerinin konfigürasyonu yukarida belirttigimiz policyler çerçevesinde tamamlanmis durumda. Yani biz ALTUNIZADE Routeri üzerindeki konfigürasyonumuzu bitirdigimizde baglantimizi hemen gerçeklestirebilecegiz. Bu noktada ilk göstermek istedigim ALTUNIZADE Routeri üzerindeki NAT konfigürasyonu. Internet baglantilari için aslinda local network içerisindeki bütün ip adreslerinin reel ip adresine NAT’lanmasi gerekmektedir. Fakat böyle bir durumda VPN baglantimiz için gereken trafikte NAT’a ugrayacagi için tünel üzerinde sorun yasariz. Bu sebeple NAT konfigürasyonumuzu asagidaki gibi düzenleyerek 10.254.0.0 networkünde 10.97.0.0 networküne giden paketleri NAT disinda biraktim.

NAT kuralimizi bu sekilde düzenledikten sonra IKE Phase 1 için gereken policyleri komut satirindan olusturabiliriz.

Burada IKE Phase 1 için tanimlayabilecegimiz parametreleri görebiliyoruz. Simdi adim adim authentication, encryption, Diffie Hellman Group, Data Integrity algoritmasi ve life time’i tanimlayacagiz.

Authentication için burada preshare key’i seçtim. Dolayisiyla preshared key’in tanimlamasinida komut satirinda yapmak zorundayiz. Encryption için 3 farkli seçenegimiz var.

DES ve 3DES’den daha güvenli olmasi sebebiyle ben burada AES’i tercih ediyorum. AES aslinda 192 ve 256 bit keyleride desteklemektedir. Ancak simdilik 128 bitlik keyler güvenli kabul edildigi için bu uygulamada AES 128’i kullanarak devam edecegim. Buradan sonra belirlememiz gereken ise Data Integrity için kullanacagimiz algoritma (hash) olacak. Devaminda Diffie Hellman Group ve Life Time parametrelerinide belirleyecegiz.

Lifetime aslinda default olrakda 86400 saniye, ben burada sadece konfigürasyonu görmeniz açisindan yeniden girisini yaptim. Olusturdugumuz bu IKE Phase 1 (yada ISAKMP) ilkesini show komutlariyla görüntüleyebiliriz.

Bizim olusturdugumuz ve default olarak var olan policyler yukaridaki gibi. Simdi iki nokta arasindaki Preshare Key’i tanimlayacagiz.

IKE Phase 1 - ISAKMP ile ilgili konfigürasyonlarimiz bu kadar. Bu noktada yapmamiz gereken IPSec tünelinde kullanilacak Transform Set’imizi olusturmak olacak. Transform Set’i IPSec üzerinde kullanilacak Encryption ve Data Integrity algoritmalarinin tanimlandigi bir yapi olarak tanimlayabiliriz. Burada kullanabilecegimiz iki protokolden (ESP ve AH), ESP ayni zamanda encryption da saglayabildigi için bunu seçiyoruz. Integrity yani datanin degistirilmeden alindiginin onaylanmasini saglamak için MD5 ve sifreleme için yine 192 bit AES’i seçiyoruz. AES disinda 56 bitlik keyler kullanan DES ve 3 kati kadar güçlü oldugunu söyleyebilecegimiz 3DES’te mevcuttur.

Default Mode Tunnel olmasina ragmen görülmesi açisindan bu konfigürasyonu su an komut satirinda bulundugumuz yerden yapabiliyoruz.

Simdi ise sirada bir Crypto-Map olusturarak IPSec kurallarimizi bir interfacede çalistirabilecek hale getirmek için yapacagimiz konfigürasyonlar var.

Dikkat ederseniz burada bizim için, bu Crypto-Map’in biz geçerli bir access-list ve bir komsu tanimlayincaya kadar disable durumda olacagi seklinde bir not var. Burada bahsettigimiz access-list VPN trafigimizi baslatacak olan trafigin belirlendigi bir tanimlama, komsu ise VPN baglantimizi sonlandiracak, yani bu uygulama içerisinde KADIKOY Routerinin ip adresi olacak. Ben Router üzerinde daha öncede 100 numarali bir ACL olusturmus ve VPN trafigini kullanacak baglantiyi tanimlamistim. Bu access-list su sekildedir;
access-list 100 permit ip 10.254.0.0 0.0.255.255 10.97.0.0 0.0.255.255
Dolayisiyla bu ACL’i kullanarak devam edebiliriz.

Devam ettigimizde, komsu router ve ACL tanimlarimizdan sonra yukaridaki resimde de görülebilen, daha önce olusturdugumuz Transform Set’i, bu Crypto - Map için ekliyoruz. Burada belirleyebilecegimiz bir baska parametrede Security Association Lifetime. Bu süre istersek Kilobayts yada Seconds cinsinden belirlenebilir.
VPN Konfigürasyonumuz hazir gibi. Yapilmasi gereken bir iki sey daha var. Aslinda bu Router üzerinde bir kaç farkli trafige izin verilmis olmasina ragmen VPN trafigi için henüz bir tanimlama yapilmamis durumda. Su an kullandigim Router üzerinde güvenlik açisinda yapilan konfigürasyonlar asagidaki gibidir.
! ip inspect name FIREWALLINSPECT cuseeme ip inspect name FIREWALLINSPECT ftp ip inspect name FIREWALLINSPECT h323 ip inspect name FIREWALLINSPECT icmp ip inspect name FIREWALLINSPECT netshow ip inspect name FIREWALLINSPECT rcmd ip inspect name FIREWALLINSPECT realaudio ip inspect name FIREWALLINSPECT rtsp ip inspect name FIREWALLINSPECT esmtp ip inspect name FIREWALLINSPECT sqlnet ip inspect name FIREWALLINSPECT streamworks ip inspect name FIREWALLINSPECT tftp ip inspect name FIREWALLINSPECT tcp ip inspect name FIREWALLINSPECT udp ip inspect name FIREWALLINSPECT vdolive ! interface Serial1/0 ip address 88.240.13.47 255.0.0.0 ip access-group FWSERIAL in ip nat outside ip inspect FIREWALLINSPECT out ip virtual-reassembly ! ip access-list extended FWSERIAL permit icmp any host 88.240.13.47 echo-reply permit icmp any host 88.240.13.47 time-exceeded permit icmp any host 88.240.13.47 unreachable deny ip any any log !
Burada yapmamiz gereken ACL’i yeniden düzenleyerek VPN trafigine ve VPN kurulmasi için gereken (ESP, AH, ISAKMP gibi) trafige izin vermek olacaktir.

Daha önce Names ACL kullanmis olmanin avantajiyla bütün bir ACL’i yeniden degistirmek yerine 5,6,7 gibi sira numaralari ile yeni ACL satirlarini ekledim.

Burada unuttugumzu bir seyde bizim local networkümüzden diger noktadaki local networke izin veren ACL satiri. Onuda asagidaki gibi ekleyebiliriz.

Son olarak Internet baglantimizi yaptigimiz Serial Interface’e Crypto-Map tanimlamizi ekliyoruz.

Artik testlerimizi yapabilir. Ben burada ping testi ile birlikte Router üzerinde debug komutunu çalistirdim. Debu sirasinda çok fazla veri aldigim için sadece bir kismini asagiya ekliyorum. Devaminda zaten show komutlariylada durumu inceliyor olacagiz.

ALTUNIZADE#debug crypto isa Crypto ISAKMP debugging is on ALTUNIZADE# success *Sep 8 15:55:17.263: ISAKMP:(0:0:N/A:0):found peer pre-shared key matching 85.16.213.5 ....
*Sep 8 15:55:17.631: ISAKMP:(0:0:N/A:0):Checking ISAKMP transform 1 against priority 10 policy *Sep 8 15:55:17.635: ISAKMP: encryption AES-CBC *Sep 8 15:55:17.635: ISAKMP: keylength of 128 *Sep 8 15:55:17.639: ISAKMP: hash SHA *Sep 8 15:55:17.639: ISAKMP: default group 1 *Sep 8 15:55:17.639: ISAKMP: auth pre-share *Sep 8 15:55:17.639: ISAKMP: life type in seconds *Sep 8 15:55:17.643: ISAKMP: life duration (VPI) of 0x0 0x1 0x51 0x80 ....
*Sep 8 15:55:18.487: ISAKMP:(0:1:SW:1):SA authentication status: authenticated *Sep 8 15:55:18.491: ISAKMP:(0:1:SW:1):SA has been authenticated with 85.16.213.5
....
Show crypto komutlari ile VPN bilgilerimizi inceleyebiliyoruz.


Evet arkadaslar bu makalemizde Cisco Routerlar üzerinde komut satirini (Command Line Interface) kullanarak Site - To - Site Vpn baglantilarinin nasil yapilacagini incelemeye çalistirk. Umarim faydali olmustur. Bir baska makalede görüsmek üzere.
İlgili Diğer Makaleler Cisco Routerlar Ile Site-To-Site GRE Over IPSec Konfigürasyonu (SDM) Remote Access VPN - Cisco Easy VPN Server ve VPN Client Cisco Routerlar Üzerinde SDM ile Site-To-Site IPSec VPN Konfigürasyonu Cisco Routerlarda GRE Tünel Konfigurasyonu (Command Line Interface)
|