شبکه خصوصی مجازی (VPN) چیست؟!

این روز ها بیشتر افراد برای غلبه بر محدودیت هایی مثل تحریم، فیلترینگ و ... در اینترنت از VPN ها استفاده می‌کنند. اما آیا واقعا VPN (شبکه خصوصی مجازی) فقط یک فیلترشکن است؟!

قطعا اینطور نیست. به همین دلیل در این پست میخواهیم تا حدی با مفهوم شبکه خصوصی مجازی (Virtual Private Network) و کاربرد های آن در شبکه های کامپیوتری آشنا شویم.

در ابتدا لازم است با دو مفهوم شبکه های خصوصی (Private Network) و شبکه های عمومی (Public Network) آشنا شویم.

زمانی که شما سیستم های کامپیوتری داخل منزل یا دفتر کارتان را به صورت LAN به هم متصل می‌کنید در واقع یک شبکه خصوصی (Private Network) ایجاد کرده اید. سیستم های داخل شبکه خصوصی می‌توانند به راحتی همدیگر را دیده و با هم ارتباط برقرار کنند اما این سیستم ها از بیرون شبکه خصوصی شما (مثلا از طریق اینترنت) قابل دستیابی نیستند. سیستم های کامپیوتری داخل یک شبکه خصوصی می‌توانند هر IP Address دلخواه شما (مثلا 192.168.0.1) را داشته باشند زیرا این IP Address ها فقط داخل شبکه خصوصی شما تعریف شده اند و خارج از شبکه خصوصی شما معنی ندارند. به این IP Address ها Private IP Address گفته می‌شود.

اما شبکه عمومی (Public Network) به سیستم های متعلق به شما محدود نمی‌شود. در واقع شبکه جهانی اینترنت اصلی ترین شبکه عمومی است. سیستم های متصل به اینترنت باید IP Address یکتای مختص به خود را داشته باشند که توسط RIR به آنها فروخته شده است. این IP Address ها کاملا یکتا و عمومی اند. منظور از آدرس آی پی عمومی (Public IP Address) این است که این IP Address در اینترنت تعریف شده و از طریق آن می‌توان به سیستم مورد نظر دسترسی مستقیم داشت.

بعضی از افراد فعال در حوزه IT به اشتباه از عبارت Valid IP Address به جای Public IP Address استفاده می‌کنند. لازم است بدانید که Valid IP Address مفهوم دیگری است و ربطی به Private/Public IP Address ندارد.

برای آشنایی با IP Address و روش یافتن آن می‌توانید مقاله مرتبط با IP Address را مطالعه فرمایید.



حال که با مفهوم شبکه ی خصوصی و شبکه ی عمومی آشنا شدید، لازم است بدانید که گاهی لازم است از خارج از یک شبکه خصوصی و از طریق یک شبکه عمومی (مثل اینترنت) به سیستم های داخل شبکه خصوصی دسترسی داشته باشید. مثلا فرض کنید که می‌خواهید از خانه به فکس شرکت و یا فایل های به اشتراک گذاشته شده در شبکه داخلی شرکت دسترسی داشته باشید. یا فرض کنید که می خواهید از خارج از دانشگاه، به اسناد و پایان نامه های موجود در شبکه داخلی دانشگاه دسترسی پیدا کنید. یا فرض کنید که فایروال نصب شده روی سرور سایت شما جوری تنظیم شده است که تنها از داخل شرکت اجازه دسترسی به سرور را میدهد و شما نیاز دارید که از بیرون شرکت به آن دسترسی پیدا کنید.

برای اتصال به یک شبکه خصوصی از راه دور و از طریق یک شبکه عمومی لازم است یک شبکه خصوصی مجازی (VPN) ایجاد کنید. این اتصال از طریق یک تونل رمزنگاری شده بین کلاینت VPN و شبکه خصوصی شما صورت میپذیرد. شما با وارد کردن یک نام کاربری و کلمه عبور و یا وارد کردن یک Certificate در نرم افزار کلاینت VPN می توانید یک تونل امن به شبکه خصوصی مورد نظرتان باز کنید.

تونل امن ایجاد شده بین کاربر و شبکه خصوصی دور از آن
تونل امن ایجاد شده بین کاربر و شبکه خصوصی دور از آن


اطلاعات رد و بدل شده از طریق این تونل رمز می‌شوند بنابراین هکر ها و سایر افراد و سازمان های غیر مجاز، قادر به مشاهده اطلاعات رد و بدل شده بین شما و شبکه خصوصیتان نیستند.

همانطور که پیشتر گفته شد، شما از طریق VPN به تمام منابع موجود در شبکه خصوصیتان مثل پرینتر، دوربین، سرور و ... دسترسی دارید. اتصال اینترنت هم می‌تواند یکی از این منابع باشد. به عبارت دیگر اگر شبکه خصوصی شما به اینترنت متصل باشد، با اتصال به شبکه خصوصیتان از طریق VPN می‌توانید از اینترنت متصل به آن استفاده کنید.


کاربرد های شبکه خصوصی مجازی

  • اتصال به شبکه خصوصی داخل شرکت از راه دور و استفاده از منابع آن. برای مثال ارسال فکس با دستگاه موجود در شرکت از راه دور یا مشاهده دوربین های امنیتی شرکت از منزل.
  • اتصال به سایت ها و سرویس هایی که توسط دولت ها و ... تحریم یا سانسور شده و یا به محدوده جغرافیایی خاصی سرویس می‌دهند. برای این منظور باید یک شبکه خصوصی متصل به اینترنت در آن محدوده جغرافیایی ایجاد کرد و توسط VPN از راه دور به آن شبکه وصل شوید.
  • افزایش امنیت اتصال به اینترنت های عمومی مثل اینترنت موجود در هتل ها. در این صورت شما با استفاده از VPN یک تونل امن با شبکه خصوصی خودتان ایجاد می‌کنید که اطلاعات رد و بدل شده (حتی با http) را رمز کنید. در این صورت هکر ها، هتل و ... به راحتی قادر به مشاهده اطلاعات رد و بدل شده شما نخواهند بود.

نکاتی که هنگام استفاده از VPN باید در نظر گرفت

  • اتصال به اینترنت از طریق اتصال به شبکه خصوصی، به خاطر رمزنگاری و طولانی تر شدن مسیر ارسال داده ها، کند تر از حالت عادی است.
  • در رابطه با اتصال به شبکه های خصوصی ای که متعلق به خود شما نیست، محتاط باشید. ممکن است اطلاعات و تاریخچه وب گردی شما توسط سازندگان آن VPN قابل مشاهده باشند.
  • استفاده از VPN های عمومی مثل Hotspot Shield یا 1.1.1.1 برای دور زدن تحریم یا سانسور، در بعضی از کشور ها منع قانونی دارد. مثلا در چین تنها مجاز به استفاده از VPN های مورد تایید دولت هستید. در ایران منع قانونی مشخصی در رابطه با استفاده از VPN در حالت عادی وجود ندارد اما عبور از فیلترینگ برای مقاصد خاصی ممکن است جرم تلقی شود.


برای ایجاد یک شبکه خصوصی مجازی پروتکل های مختلفی از جمله PPTP و L2TP  و OpenVPN و IKEv2/IPSec و Wireguard... وجود دارند که هر کدام مزایا و معایب و کاربرد های خود را دارند. با این حال WireGuard نسبت به بقیه جدیدتر، سبک تر، امن تر و سریع تر است. به همین دلیل Linus Torvalds (خالق linux) آن را در هسته جدید Linux (نسخه 5.6) به صورت پیشفرض قرار داده است.

برای راه اندازی یک VPN با پروتکل WireGuard میتوانید از اسکریپت های موجود در اینجا استفاده کنید.

برای این کار یک سرور Linux (ترجیها Ubuntu) با حداقل منابع (یک هسته پردازشی و 1GB حافظه کافی است) آماده کرده و دستورات زیر را به ترتیب در آن وارد کنید.

$ wget -O - https://github.com/xei/wireguard-setup-scripts/archive/master.tar.gz | tar xz
$ cd wireguard-setup-scripts-master
$ sudo ./setup-wireguard-server.sh

سرور VPN شما آماده است و می‌توانید با دستور زیر برای هر Client فایل تنظیمات بسازید.

sudo ./create-new-peer.sh hamidreza-pc

سپس با توجه به سیستم عامل Client، نرم‌افزار مخصوص WireGuard را نصب کرده و با استفاده از فایل تنظیماتی که در مرحله قبل ساخته اید و در مسیر /etc/wireguard/peers/  ذخیره شده است، به VPN متصل شوید.
دانلود نرم افزار کلاینت Windows

دانلود نرم افزار کلاینت macOS

دانلود نرم افزار کلاینت Linux

دانلود نرم افزار کلاینت Android

دانلود نرم افزار کلاینت iOS


لینک های دیگر: