
VPN یا شبکه مجازی اختصاصی (Virual Private Network)
ابزار برقراری ارتباط در شبکه است. از زمان گسترش دنیای شبکههای کامپیوتری ، سازمانها و شرکتها به دنبال یک شبکه ایمن و سریع گشتهاند..
این پست قصد داریم شما را با مفاهیم و آشنایی کامل با VPN آشنا سازیم . در صورتی که علاقه ای به دانستن مفاهیم ندارید . برای دریافت VPN به پایین همین پست مراجعه فرمایید . و در صورتی که جز علاقه مندان هستید به ادامه مطلب شما را دعوت مینماییم.
تا مدتی قبل شرکتها و سازمانهایی که اطلاعات زیادی برای انتقال داشتند از خطوط Leased و شبکههای WAN بهره میبردند. شبکههای ISDN (با سرعت ۱۲۸کیلوبایت بر ثانیه) و OC3 (با ۱۵۵مگابایت بر ثانیه) بخشی از شبکه WAN هستند.
افزایش محبوبیت و فراگیری اینترنت بعضی از سازمانها را به استفاده از اینترانت کشاند. در این بین استفاده از شبکههای مجازی اختصاصی (VPN) مطرح شد.
همزمان با عمومیت یافتن اینترنت، اغلب سازمانها و موسسات ضرورت توسعه اختصاصی خود را به درستی احساس کردند. درابتدا شبکههای اینترانت مطرح گردیدند. این نوع شبکهها به صورت کاملاً اختصاصی بوده و کارمندان یک سازمان بااستفاده از گذر واژه تعریف شده، قادر به ورود به شبکه و استفاده از منابع موجود میشوند؛ ولی به تازگی، موسسات و سازمانها با توجه به مطرح شدن خواستههای جدید (کارمندان و ادارات از راه دور) اقدام به ایجاد شبکههای اختصاصی مجازی نمودهاند.
یک ویپیان شبکهای اختصاصی است که از یک شبکه برای ارتباط با شبکهای دیگر از راه دور و ارتباط کاربران با شبکهٔ سازمان خود استفاده مینماید. این نوع شبکهها به جای استفاده از خطوط واقعی نظیر خطوط Leased، از یک ارتباط مجازی به اینترنت برای ایجاد شبکه اختصاصی استفاده میکنند.
اصولاً VPN یک شبکه اختصاصی است که از یک شبکه عمومی مانند اینترنت برای ایجاد یک کانال ارتباطی مخصوص بین چندین کاربر و دسترسی به اطلاعات بهره میبرد.
بهره بردن VPN از شبکههای عمومی مسافت را بیمعنی میسازد، امنیت را بالا میبرد و دردسرهای استفاده از پروتکل های مختلف را کاهش میدهد.
مثال خوبی میتوان برای توضیح VPN مطرح کرد. چند جزیره کوچک و مستقل از هم را در اقیانوسی در نظر بگیرید. در اینجا جزیرهها نقش مراکزی را ایفا میکنند که ما قصد اتصال آنها به یکدیگر را داریم. اقیانوس هم میتواند یک شبکه عمومی مانند اینترنت باشد.
برای رفت و آمد از جزیرهای به جزیره دیگر میتوان از قایقهای موتوری کوچک استفاده کرد. البته استفاده از این قایقها بسیار وقتگیر و البته ناامن است. هر کس از جزیرههای دیگر میتواند رفت و آمد شما را مشاهده کند. از این رو می توان قایق را به استفاده از وب برای ایجاد ارتباط بین دو مرکز تشبیه کرد.
فرض کنید که بین جزیرهها پلهایی ساخته شدهاست. استفاده از این پلها به مراتب بهتر از روش قبلی است. البته این روش نیز بسیار گران قیمت است و از ایمنی کافی برخوردار نیست. این روش را نیز میتوان به استفاده از خطوط Leased تشبیه کرد.
حال استفاده از VPN را به صورت یک زیردریایی کوچک و سریع فرض کنید. رفت و آمد با این زیردریایی بسیار سریع و آسان است. از طرفی رفت و آمد شما کاملا? دور از چشمان همه انجام میشود.

VPDN و Site-to-Site
از انواع VPN میتوان به Remote Access VPN یا Virtual Private Dial-up Network اشاره کرد. VPDN برای سازمانهایی که کاربران زیادی در مکانهای متعدد دارند، مناسب است. به این ترتیب از یک مرکز برای ایجاد سرور شبکه دسترسی (NAS) استفاده میشود. هر کاربر ابزاری برای اتصال به این سرور دریافت میکند و به VPN متصل میشود.
نوع دیگر Site-to-Site نام دارد. در این روش با استفاده از اینترانت و اکسترانت میتوان دو سایت مشخص را به هم متصل کرد. این کار برای شرکتهایی مناسب است که قصد به اشتراک گذاشتن یک دسته اطلاعات خاص با شرکت دیگری را دارند. در این روش VPN تنها بین دو سایت مشخص شده ایجاد میشود.

تانلینگ (Tunneling)
VPN معمولاً برای ایجاد شبکه اختصاصی از تونلینگ استفاده میکند. در این روش یک تونل ارتباطی، بسته دیتایی که در درون یک بسته دیگر قرار گرفته را به مقصد میرساند.
تا نلینگ از سه پروتکل ارتباطی استفاده میکند:
پروتکل حامل (Carrier Protocol): اطلاعات شامل حمل اطلاعات به مقصد
پروتکل کپسوله کردن (Encapsulating Protocol): پروتکلی است که بسته دیتا اصلی درون آن قرار میگیرد
پروتکل عابر (Passenger Protocol): پروتکل مربوط به دیتا اصلی استفاده از تا نلینگ ارسال و دریافت هر نوع اطلاعاتی را ممکن میسازد.
برای مثال میتوان دادهای که پروتکلی غیر از IP (مانند NetBeui) دارد را در درون بسته IP قرار داد و به راحتی به مقصد رساند.
امنیت : فایروال
متخصصان شبکه از ابزارهای مختلفی برای ایمن ساختن VPN استفاده میکنند.
استفاده از فایروال تقریباً یکی از مرسومترین روشهای ایمن سازی شبکهها است. فایروال میتواند پورتهای مختلف و همچنین نوع بستههای دیتا را کنترل و محدود کند.
امنیت: کدگذاری
کدگذاری شامل ترجمه اطلاعات به رمزهایی خاص و ارسال آنها به یک دستگاه دیگر است به طوری که دستگاه گیرنده هم ابزار ترجمه این رمز خاص را دارا باشد.
در VPN از دو نوع کدگذاری استفاده میشود. روش متفارن (Symmetric-key encryption) نوع رمز به کار رفته را همراه با اطلاعات ارسال میکند. به این ترتیب کامپیوتر فرستنده اطلاعات را به رمز خاصی ترجمه میکند و اطلاعات این رمز را همراه با دادهها به کامپیوتر گیرنده ارسال میکند. کامپیوتر گیرنده نیز با دریافت دادهها و مشاهده اطلاعات کدگذاری، رمزها را ترجمه میکند.
روش دیگر از دو کلید برای کدگذاری و بازخوانی رمزها استفاده میکند. اطلاعات کدگذاری شده یک کلید عمومی دریافت میکنند در حالی که هر کامپیوتر گیرنده باید از قبل کلید مخصوصی را نیز دارا باشد. به این ترتیب برای بازخوانی اطلاعات کدگذاری شده، باید هر دو کلید را در دست داشت.

IP-Sec
Ipsec برخلاف PPTP و L2TPروی لایه شبکه یعنی لایه سوم کار میکند.
این پروتکل دادههایی که باید فرستاده شود را همراه با همه اطلاعات جانبی مانند گیرنده و پیغامهای وضعیت رمزگذاری کرده و به آن یک IP Header معمولی اضافه کرده و به آن سوی تونل میفرستد.
کامپیوتری که در آن سو قرار دارد IP Header را جدا کرده ، دادهها را رمز گشایی کرده و آن را به کامپیوتر مقصد میفرستد. IPSec را میتوان با دو شیوه Tunneling پیکر بندی کرد . در این شیوه انتخاب اختیاری تونل ، سرویس گیرنده نخست یک ارتباط معمولی با اینترنت برقرار میکند و سپس از این مسیر برای ایجاد اتصال مجازی به کامپیوتر مقصد استفاده میکند . برای این منظور، باید روی کامپیوتر سرویس گیرنده پروتکل تونل نصب شده باشد .
معمولاً کاربر اینترنت است که به اینترنت وصل میشود . اما کامپیوترهای درون LAN هم میتوانند یک ارتباط VPN برقرا کنند. از آنجا که ارتباط IPاز پیش موجود است تنها برقرار کردن ارتباط VPN کافی است.
در شیوه تونل اجباری ، سرویس گیرنده نباید تونل را ایجاد کند بلکه این کار به عهده فراهم ساز است. سرویس گیرنده تنها باید به ISP وصل شود. تونل بهطور خودکار از فراهم ساز تا ایستگاه مقصد وجود دارد. البته برای این کار باید هماهنگیهای لازم با ISPانجام بگیرد.
ویژگیهای امنیتی در IPsec
Ipsec از طریق AH مطمئن میشود که Packetهای دریافتی از سوی فرستنده واقعی نه از سوی یک نفوذکننده (که قصد رخنه دارد) رسیده و محتویات شان تغییر نکرده .AH اطلاعات مربوط به تعیین اعتبار و یک شماره توالی در خود دارد تا از حملات Replay جلوگیری کند. اما AH رمزگذاری نمیشود. رمزگذاری از طریق Encapsulation Security Header یا ESH انجام میگیرد. در این شیوه دادههای اصلی رمزگذاری شده و VPNاطلاعاتی را از طریق ESH ارسال میکند.
ESH همچنین کارکردهایی برای تعیین اعتبار و خطایابی دارد. به این ترتیب دیگر به AH نیازی نیست. برای رمزگذاری و تعیین اعتبار روش مشخص و ثابتی وجود ندارد اما با این همه، IETF برای حفظ سازگاری میان محصولات مختلف، الگوریتمهای اجباری برای پیادهسازی Ipsec تدارک دیده. برای نمونه میتوان به MD5،DES یا Secure Hash Algorithm اشاره کرد. مهمترین استانداردها و روشهایی که در Ipsec به کار میروند عبارتنداز:
Diffie-Hellman برای مبادله کلیدها میان ایستگاههای دو سر ارتباط.
رمزگذاری Public Key برای ثبت و اطمینان از کلیدهای مبادله شده و همچنین اطمینان از هویت ایستگاههای سهیم در ارتباط.
الگوریتمهای رمزگذاری مانند DES برای اطمینان از درستی دادههای انتقالی.
الگوریتمهای درهم ریزی (Hash) برای تعیین اعتبار تک تک Packetها.
امضاهای دیجیتال برای تعیین اعتبارهای دیجیتالی.
Ipsec بدون تونل
Ipsec در مقایسه با دیگر روشها یک برتری دیگر هم دارد و آن اینست که میتواند همچون یک پروتکل انتقال معمولی به کار برود.
در این حالت برخلاف حالت Tunneling همه IP packet رمزگذاری و دوباره بستهبندی نمیشود. به جای آن، تنها دادههای اصلی رمزگذاری میشوند و Header همراه با آدرسهای فرستنده و گیرنده باقی میماند. این باعث میشود که دادههای سرباز (Overhead) کمتری جابجا شوند و بخشی از پهنای باند آزاد شود. اما روشن است که در این وضعیت، خرابکاران میتوانند به مبدأ و مقصد دادهها پی ببرند. از آنجا که در مدل OSI دادهها از لایه ۳ به بالا رمزگذاری میشوند خرابکاران متوجه نمیشوند که این دادهها به ارتباط با سرویس دهنده Mail مربوط میشود یا به چیز دیگر.
جریان یک ارتباط Ipsec
بیش از آن که دو کامپیوتر بتوانند از طریق Ipsec دادهها را میان خود جابجا کنند باید یکسری کارها انجام شود.
نخست باید ایمنی برقرار شود. برای این منظور، کامپیوترها برای یکدیگر مشخص میکنند که آیا رمز گذاری، تعیین اعتبار و تشخیص خطا یا هر سه آنها باید انجام بگیرد یا نه.
سپس الگوریتم را مشخص میکنند، مثلاً DEC برای رمزگذاری و MD5 برای خطایابی.
در گام بعدی، کلیدها را میان خود مبادله میکنند.
Ipsec برای حفظ ایمنی ارتباط از SA استفاده میکند. SA چگونگی ارتباط میان دو یا چند ایستگاه و سرویسهای ایمنی را مشخص میکند.SAها از سوی SPI شناسایی میشوند.SPI از یک عدد تصادفی و آدرس مقصد تشکیل میشود. این به آن معنی است که همواره میان دو کامپیوتر دو SPI وجود دارد:
یکی برای ارتباط A و B و یکی برای ارتباط B به A. اگر یکی از کامپیوترها بخواهد در حالت محافظت شده دادهها را منتقل کند نخست شیوه رمزگذاری مورد توافق با کامپیوتر دیگر را بررسی کرده و آن شیوه را روی دادهها اعمال میکند. سپس SPI را در Header نوشته و Packet را به سوی مقصد میفرستد.
مدیریت کلیدهای رمز در Ipsec
اگر چه Ipsec فرض را بر این میگذارد که توافقی برای ایمنی دادهها وجود دارد اما خودش برای ایجاد این توافق نمیتواند کاری انجام بدهد.
Ipsec در این کار به IKE تکیه میکند که کارکردی همچون IKMP دارد. برای ایجاد SA هر دو کامپیوتر باید نخست تعیین اعتبار شوند. در حال حاضر برای این کار از راههای زیر استفاده میشود:
Pre shared keys: روی هر دو کامپیوتر یک کلید نصب میشود که IKE از روی آن یک عدد Hash ساخته و آن را به سوی کامپیوتر مقصد میفرستد. اگر هر دو کامپیوتر بتوانند این عدد را بسازند پس هر دو این کلید دارند و به این ترتیب تعیین هویت انجام میگیرد
رمزگذاری Public Key:هر کامپیوتر یک عدد تصادفی ساخته و پس از رمزگذاری آن با کلید عمومی کامپیوتر مقابل، آن را به کامپیوتر مقابل میفرستد. اگر کامپیوتر مقابل بتواند با کلید شخصی خود این عدد را رمز گشایی کرده و باز پس بفرستد برا ی ارتباط مجاز است. در حال حاضر تنها از روش RSA برای این کار پیشنهاد میشود.
امضاء دیجیتال:در این شیوه، هر کامپیوتر یک رشته داده را علامتگذاری (امضاء) کرده و به کامپیوتر مقصد میفرستد. در حال حاضر برای این کار از روشهای RSA و DSS استفاده میشود. برای امنیت بخشیدن به تبادل دادهها باید هر دو سر ارتباط نخست بر سر یک یک کلید به توافق برسند که برای تبادل دادهها به کار میرود. برای این منظور میتوان همان کلید به دست آمده از طریق Diffie Hellman را به کاربرد که سریع تر است یا یک کلید دیگر ساخت که مطمئن تر است.
پروتکل ike
پروتکلی که امروزه استفاده از آن رایج است مبادله کلید اینترنت (به انگلیسی: Internet Key Exchange، به اختصار IKE) نام دارد. نسخه اول آن در سال ۱۹۹۸ به بازار آمد و اسم رایج آن IKEv1 است. به دلیل این که اولین نسخه از IKE توسط IPsec بهعنوان پیشفرض استفاده شد. خصوصیات IKEv1 بخشهای پنهان آن را ارتقا داد. برای ارتقای آن در ۲۰۰۵، IKEv2 ایجاد شد. با این بهروزرسانی، این پروتکل قابلاعتمادتر شد و در مقابل حملات DOS منعطفتر شد.[۳]
خب : تا اینجا با مفهوم VPN ، انواع و پروتکلهای آن آشنا شدید . ولی لازم به زکر است این قابلیت تانلینگ و ارتباط امن مزیت دیگری به جز امنیت دارد . در کشورهایی که ف ی ل ت ر ی ن گ انجام میشود ، برای دستری به مطالبی که مورد فی لت رینگ قرار گرفته اند نیز توسط وی پی ان قابل دسترس است . در واقع درخواست های کاربر توسط وی پی ان کد گذاری شده اند ، در نتیجه فیل ترینگ نمیتواند به محتوای آن دسترسی پیدا کند پس باعث میشود که دسترسی به مطالب فیل تر شده آسان شود .

در این پست به جز آموزش VPN برنامه های رایگان VPN نیز در آخر همین پس قرار میگیرد . امید است از دریافت و نصب آن بهرمند گردید . ما را از نظرات و انتقادات خود در پایین همین پست ، بهره مند سازید تا با اصلاح ایرادات ارتقا یابیم .