cisco

اجرای سناریو Public Key Infrastructure – PKI

ستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعالستاره غیر فعال
 

در بسیاری از موارد وقتی شما به اجرای IPSEC می پردازید برای Authentication از Preshared Key یا کلیدی که بین ۲ طرف مشترک است استفاده می کنید.

اما برای اجرای بهتر و امن تر می توان یک روتر را به عنوان Certificate Authority انتخاب کرد که این سرور با استفاده از Key Pair خود نسبت به صدور Certificate برای درخواست کننده اقدام می کند.

 

حال هر کسی که درخواست برای اخذ Certificate دارد باید نام و Public Key خود را در اختیار CA قرار دهد و پس از تایید شدن توسط CA ، CA برای او Certificate را صادر می کند و از این به بعد درخواست کننده می تواند برای ارتباطات خود از این Certificate استفاده کند.

در این سناریو می خواهیم یک روتر را CA سرور کنیم و روتر های ۲ و ۳ به عنوان سایت ۱ و سایت ۲ از آن certificate بگیرند.با این کار میتوانیم در زمان اجرای ipsec بجای استفاده از پسورد و Preshared key از همین certificate استفاده کنیم . برای این کار ابتدا حتماً باید زمان روتر ها با هم sync باشند یکی از روتر ها را معمولاً NTP Server می کنیم و بعد بقیه روتر ها از آن تایمشان را sync  می کنند. (زدن این دستور در GNS لازم نیست)

با دستور زیر می توانیم روتر را NTP server کنیم :

 
 
R1(config)# NTP Master
 
 
 

معمولاً یا به سرور جهانی وصلش می کنیم که این شرط مستلزم این است که دائماً به اینترنت متصل باشد و این در صورت قطعی اینترنت خطرناک است معمولاً به یک اکتیو دایرکتوری یا میکروتیک متصلش می کنیم.

روی بقیه روتر ها هم :

 
 
R2(config)# NTP Server 12.1.1.1
 
 
 

ابتدا به اینترفیس ها آی پی می دهیم:

 
 
R1(config)# int s1/0
R1(config-if)# no sh
R1(config-if)# ip add 12.1.1.1 255.255.255.252
R1(config-if)# int s1/1
R1(config-if)#no sh
R1(config-if)# ip add 12.1.2.1 255.255.255.252
 
 
 

 R2 :

 
 
R2# conf t
R2(config)# int s1/0
R2(config-if)# no sh
R2(config-if)# ip add 12.1.1.2 255.255.255.252
 
 
 

R3:

 
 
R3# conf t
R3(config)# int s1/0
R3(config-if)# no sh
R3(config-if)# ip add 12.1.2.2 255.255.255.252
 
 
 

روی R1 زوج کلید را می سازیم

 
 
R1(config)# crypto key generate rsa general-keys exportable label CA-TEST modulus 1024
 
 
 

این دستور یک زوج کلید(public key و private key) برای ما ایجاد می کند.

۱۰۲۴ یعنی کلید ۱۰۲۴ بیتی باشد.

Exportable برای اینکه بعدا بتوانیم کلید را export کنیم.

 
 
R1(config)# IP http server
 
 
 

 

با این دستور http را فعال می کنیم چون certificate را روی http می گیرند.

برای https هم باید بزنیم:

 
 
R1(config)# ip http secure-server
 
 
 

PKI

حالا باید این روتر را به CA سرور تبدیل کنیم:

 
 
R1(config)# crypto pki server CA-CBTNET
 
 
 

بعد از زدن این دستور Mode عوض می شود.

بعد از آن باید دیتابیس را بدهیم در اینجا دیتابیس می شود همان nvram و برای اینکه کمترین اطلاعات را ذخیره کند چون nvram محدود است minimum را می زنیم ( محل ذخیره certificate ها )

 
 
R1(CS-SERVER)# database level minimum
R1(CS-SERVER)# database url nvram:
R1(CS-SERVER)# lifetime certificate 365
 
 
 

می توانیم عددی بین ۰ تا ۷۳۰۵ انتخاب کنیم.

 
 
R1(CS-SERVER)# issuer-name CN=CA.CBTNET.ir L=Tehran C=IR
 
 
 

L برابر با Location و C برابر با Country می باشد.

 
 
R1(CS-SERVER)# grant auto
 
 
 

اگر این دستور را نزنیم ادمین شبکه باید به صورت دستی certificate بدهد اما اینجا اتوماتیک می شود

 
 
R1(CS-SERVER)# no shutdown
 
 
 

در انتها No shutdown را بزنید تا فعال شود.

سپس برای امن کردن private key از ما پسورد می پرسد که باید بیشتر از ۷ کاراکتر باشد.

 

 

 

 

با این دستور می توانیم CA server certificate را ببینیم

 
 
R1# show crypto pki certificates
 
 
 

حالا باید روی روترهای R2و R3 دستورات زیر را بزنیم تا از certificate، R1 بگیرند

 
 
R2(config)# crypto ca trustpoint CA-CERTIFICATE
R2(CA-TRUSTPOINT)# enrollment url http://12.1.1.1
 
 
 

آی پی CA سرور را می دهیم

Enrollment برای درخواست certificate است

 
 
R2(CA-TRUSTPOINT)# exit
 
 
 

حالا R2 باید CA سرور را authenticate کند

 
 
R2(config)# crypto ca authenticate CA-CERTIFICATE
 
 
 

بعد از زدن این دستور ۲ تا hash را به ما نشان می دهدکه out of band (مثلا به صورت تلفنی) چک می کنیم آن را اگر اوکی بود yes را می زنیم

R2(config)# crypto ca enroll CA-CERTIFICATE
R2# show crypto pki certificates

بعد از زدن دستور enroll سوالاتی می پرسد که در تصویر بالا امده است

دستور show:

میبینیم هر ۲ certificate صادر شده

هم برای R1 و هم برای Certificate , R2 صادر شده است.

همه این دستورات را روی R3 هم می زنیم.

برای export گرفتن از آن :

 
 
R1(config)# crypto key export rsa CA-TEST pem url nvram: 3des CBTNET@123
 
 
 

متد encryption را ۳des انتخاب کردیم همچنین پسوردی که می دهیم حتما باید complex باشد.

حالا destination filename را برای public key و private key می پرسد، اینتر می زنیم بعد با دستور show می توانیم ببینیم.

 

۲ خط آخر pub و prv را نشان می دهد.

از آن Back UP تهیه کنید که اگر خرابی برای روتر پیش بیاید ، همه certificate ها از بین می رود ولی اگر Back Up آن را داشته باشیم دوباره با TFTP میریزیم و همه certificate ها فعال می شود.