این روز ها بیشتر افراد برای غلبه بر محدودیت هایی مثل تحریم، فیلترینگ و ... در اینترنت از 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 میتوانید از اینترنت متصل به آن استفاده کنید.
برای ایجاد یک شبکه خصوصی مجازی پروتکل های مختلفی از جمله 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
دانلود نرم افزار کلاینت Android
لینک های دیگر: