Virtual Private Network:
Microsoft سرویسی به نام RRAS دارد ، که 2 عملیات اصلی Routing و Remote Access VPN را انجام می دهد . بحث اصلی در عملیات Remote Access ، بحث پذیرش اتصالات VPN است
✔️ شبکه خصوصی مجازی ( Virtual Private Network ) ، چرا مجازی ؟
زیرا آن سیستمی که وصل می شود و آن سیستمی که اتصال را می پذیرد حقیقتاً در یک شبکه
نیستند ( جاهای مختلفی از دنیا ) ، اما به واسطه اتصالی که بین آنها اتفاق می افتد
در یک شبکه نام می گیرند و به همین دلیل به آنها Virtual Private Network گویند .
✔️ تمام مشتقات VPN عملیات Encryption را انجام می دهند ، البته با الگوریتم های
متفاوت که این الگوریتم های متفاوت قدرت های متفاوتی دارند .
✔️ VPN زدن
از مشتقات اتصالات Point To Point است ، به همین دلیل آن را (Point-to-Point
Tunneling Protocol) نام گذاری کردند .
پروتوکل های متنوعی برای اتصالات VPN وجود دارد که فعلا 2 پروتوکل PPTP و L2TP را بررسی می کنیم :
PPTP (Point-to-Point Tunneling Protocol) :
معروف ترین پروتوکل VPN است و با الگوریتم Microsoft Point-To-Point Encryption
عملیات Encrypt کردن Data را انجام می دهد . ( جهت انجام عملیات Encryption ، الگوریتم ضعیفی است و با کلید های 40 بیتی و 128 بیتی کار می کند ) ، PPTP در بحث لایه 4 با پروتوکل TCP روی پورت 1723 کار می کند .
L2TP (Layer Two Tunneling Protocol) :
اگر می خواهید قدرت Encryption را بالا ببرید ، باید از مشتقات قوی ترین حالت اتصال در شبکه های کامپیوتری به نام IPsec استفاده کنید . IPsec قوی ترین حالت اتصالات ایمن در شبکه های کامپیوتری است که L2TP از مشتقات IPsec می باشد و با الگوریتم IPsec AES 128 بیت کار می کند . L2TP در بحث لایه 4 با پروتوکل UDP روی پورت 1701 کار می کند .
در IPsec الگوریتم های قدرتمندی جهت Encryption وجود دارد :
AES
(Advanced Encryption Standard)
3DES
(Triple-DES)
DES (Data Encryption Standard)
با توجه به اینکه L2TP از مشتقات IPsec می باشد ، زمان اتصال از یکی از این 3 حالت استفاده خواهید کرد که بسیار قدرت Encryption آنها نسبت به Microsoft Point-To-Point Encryption قوی تر و محکم تر خواهد بود . ( بنابراین L2TP امنیت ارسال Data و الگوریتم Encryption که استفاده می کند ، بسیار قوی تر از PPTP است )
Authentication Protocols :
در بحث اتصالات Point-To-Point که VPN ها هم از آن جمله هستند ، غالباً از پروتوکل های شناسایی ( MS-CHAP v2 - CHAP- PAP ) استفاده می کنیم ، که کار آنها انتقال Username و Password از مبدأ به مقصد می باشد . به صورت پیش فرض بر روی تجهیزات Microsoft از جنس Server یا Client ، پروتوکل شناسایی MS-CHAP v2 فعال است که MS اول مخفف Microsoft می باشد .
نکته ای که حائز اهمیت است ، هر بحثی پروتوکل شناسایی خودش را دارد . مثلا ، در سرویس Active Directory پروتوکل شناسایی Kerberos است یا در محیط Wireless پروتوکل شناسایی WPA ، WEP v1،v2 می باشد . ( در مودم ها قابل رویت هستند )
PAP (Password Authentication Protocol) :
Username و Password را به صورت Clear-Text جابه جا می کند . ( یعنی اگر کسی بتواند Data شما را وسط راه Capture کند ، Username و Password را خواهد فهمید )
CHAP (Challenge-Handshake Authentication Protocol) :
CHAP و مشتقی که Microsoft برای خودش به وجود آورده است ( MS-CHAP v1،v2 ) 👈 Username و Password را به صورت Hash شده جابه جا می کنند . یعنی اگر وسط راه Packet شما دزدیده شود ، به این راحتی متوجه Username و Password نخواهند شد .
اتصالات PPTP :
✔️ در اتصالات Point-to-Point وقتی مبداء به مقصدی متصل می شود ، مقصد موظف است برای مبداء که به او متصل شده تأمین IP کند . مقصد به 2 صورت این کار را انجام می دهد :
1
سراغ DHCP موجود در مدار بفرستید که IP دریافت کنند .
2
کار ساده تر این است که ، یک بازه IP در اختیار VPN Server قرار دهید و هر کسی که وصل شد یک IP دریافت کند . ( حال VPN Serve می تواند Cisco ، RRAS یا MikroTik باشد ) ،
VPN Server یک IP را خودش بر می دارد و یکی هم به طرف مقابل می دهد ، آن وقت 2 عدد IP در یک رنج قرار می گیرند ، اما حقیقتاً در یک شبکه نیستند ، مجازاً در یک شبکه افتادند .
✔️ در اتصالات Point-to-Point وقتی به مقصد متصل می شوید ، مقصد به شما یک IP می دهد که بر روی کارت شبکه مجازی به نام PPP Adapter سوار می شود . این یک تک IP است Subnet mask ندارد . ( غالباً Subnet mask به شکل 255.255.255.255 نشان داده می شود )
✔️ وقتی از طریق VPN متصل شدید ، IP که VPN Server روی Interface شما سوار کرده اهمیت دارد ، نه آن IP که بر روی کارت شبکه اصلی وجود دارد . یعنی از این به بعد سیستم شما با آن IP که از VPN Server گرفته ، در شبکه شناخته خواهد شد .
نکات قبل از اتصال VPN :
1
Firewall ویندوز باید حتماً اجازه اتصال Port های VPN را بدهد . بنابراین در لیست Inbound Rules پورت های زیر را فعال کنید . ( جهت جلوگیری از VPN Error 812 )
Routing and Remote Access (L2TP-In)
Routing and Remote Access (PPTP-In)
Routing and Remote Access (GRE-In) 👈 پروتوکل مستقلی است و در لایه 4 شماره Port ندارد .

2
سرویس RRAS به صورت پیش فرض 128 ارتباط VPN را قبول می کند . ( البته این عدد قابل ارتقاء نیز می باشد )
✔️ در سرویس RRAS بر روی Ports کلیک راست ، گزینه Propertise را انتخاب کنید .
✔️ با انتخاب دکمه Configure عدد مورد نظر را در قسمت Maximum Port تایپ کنید .

3
قرار ما بر این شده ، یک بازه IP در اختیار VPN Server قرار گیرد و هر کسی که وصل شد یک IP دریافت کند . ( حال VPN Serve می تواند Cisco ، RRAS یا MikroTik باشد )
✔️ در سرویس RRAS بر روی اسم سرور کلیک راست ، گزینه Propertise را انتخاب کنید .
✔️ از تب IPv4 تیک گزینه Static Address Pool را انتخاب کنید .
✔️ با انتخاب دکمه Add ، یک بازه آدرس IP Private مستقل ، ( یعنی نمونه آن در شبکه خود نداشته باشید ) وارد کنید .
✔️ این یک تک IP است Subnet mask ندارد . ( غالباً Subnet mask به شکل 255.255.255.255 نشان داده می شود )

4
Client-to-site VPNs :
در سناریو ما سرویس RRAS به 2 شبکه متصل است ( شبکه داخلی و اینترنت) ، که از هر 2 سمت می تواند VPN قبول کند . این جنس VPN ها را Client-to-Site گویند . یعنی یک نفر به Router وصل می شود که به شبکه پشت سر Router دسترسی داشته باشد . ( من و شبکه ام یک Site حساب می شویم )
به خاطر اینکه عملیات دورکاری انجام شود ، اصل این داستان به وجود آمده است . دورکاری یعنی شخصی از داخل منزل به Router وصل شود و آن Router بتواند او را به منابع Share شده داخل شبکه متصل کند . به این ترتیب دیگر شخص نیاز ندارد ، فیزیکا در آن شبکه حضور پیدا کند تا بتواند از فلان فولدر Share شده استفاده کند . البته در ایران برعکس است و در کشور ما از داخل VPN می زنند که به واسطه آن اینترنت داشته باشند .
اتصال با پروتوکل PPTP :
نکته ای که حائز اهمیت است ، اگر چیدمان شبکه جوری بود که ویندوز 10 داخل شبکه ما نشسته بود ، باید به Interface داخلی سرویس RRAS که IP Private دارد VPN بزنید . حال اگر واسط اتصال شما اینترنت است ، باید به Interface خارجی سرویس RRAS که IP Public دارد VPN بزنید .
✔️ کنار ساعت سیستم ، روی آیکن کارت شبکه کلیک راست کرده و گزینه Open Network and Sharing Center را انتخاب کنید .
✔️ در پنجره باز شده گزینه Setup New Connection or Network کلیک کنید .
✔️ Connect to Workplace را انتخاب و Next .
✔️ در مرحله بعد Use my internet connection(VPN) را انتخاب کنید .

✔️ آیا می خواهید Connection اینترنت بسازید ؟ خیر . ما از شبکه داخلی وصل شدیم و ربطی یه اینترنت ندارد ، بنابراین گزینه I’ll Setup an Internet Conection later را انتخاب کنید .
✔️ در بخش آخر آدرس IP شبکه ای که قرار است به آن متصل شوید را تایپ و دکمه Create را جهت ساخت Connection کلیک کنید .

قبل از اتصال با پروتوکل PPTP ، به یاد داشته باشید که اگر نوع پروتوکل اتصال را مشخص نکنید به صورت Dynamic عمل می کند . یعنی تک تک پروتوکل ها را با سرور چک می کند تا ببیند سرور کدام پروتوکل را از او می پذیرد . ( البته این کار را فقط اولین بار انجام می دهد و از آن به بعد متوجه می شود که Connection مثلا با PPTP کار می کند )
جهت اتصال تحت پروتوکل PPTP :
✔️ بر روی Connection اتصال راست کلیک و Propertise را انتخاب کنید .
✔️ در تب Security از بخش Type of VPN ، پروتوکل PPTP را انتخاب کنید .
✔️ در قسمت پایین به صورت پیش فرض بر روی تجهیزات Microsoft از جنس Server یا Client ، پروتوکل شناسایی MS-CHAP v2 فعال است که MS اول مخفف Microsoft می باشد .

جهت اتصال نیازمند Username
، Password هستید که به 2 صورت وجود دارد :
1
اگر سرور شما تحت Domain است ، می توانید از Username و Password تحت Domain استفاده کنید .
2
اگر سرور شما تحت Local است ، می توانید از Username و Password تحت Local سیستم استفاده کنید .
اگر به هنگام اتصال با VPN Error 812 مواجه شدید :
1
Firewall ویندوز باید حتماً اجازه اتصال Port های VPN را بدهد .
2
User که استفاده شده ، اجازه اتصالات راه دور را ندارد . ( بر روی User مورد نظر Propertise و از تب Dial-in گزینه Allow Access را فعال کنید )

✔️
بعد از برقراری اتصال ، در بخش Remote Access Client
سرویس RRAS ، آمار User هایی که با VPN متصل شده اند قابل رویت خواهد بود .
✔️ به یاد داشته باشید که ، با یک User چندین نفر می توانند متصل شوند . بنابراین برای سیستم محدودیتی وجود ندارد که با یک User تعداد 10 نفر وصل شوند . ( IP آنها متفاوت )

اتصال با پروتوکل L2TP :
یک بازه IP در اختیار VPN Server قرار دهید و هر کسی که وصل شد یک IP دریافت کند .
Firewall ویندوز باید حتماً اجازه اتصال Port های VPN را بدهد .
IPsec قوی ترین حالت اتصالات ایمن در شبکه های کامپیوتری است که L2TP از مشتقات IPsec می باشد . L2TP یک اسم رمز (Preshared key) نیاز دارد ، که این اسم رمز باید بین آن کسی که وصل می شود و سرور یکی باشد .
تایپ اسم رمز L2TP در سرویس RRAS :
✔️ در سرویس RRAS بر روی اسم سرور کلیک راست ، گزینه Propertise را انتخاب کنید .
✔️ از تب Security تیک گزینه Allow Custom IPsec Policy را انتخاب کنید .
✔️ اسم رمز را در بخش Preshared key تایپ کنید . ( این اسم رمز را بر روی Client ها هم باید تعریف کنید )
نکته ای که حائز اهمیت است ، بعد از تایپ اسم رمز در سرویس RRAS ، حتماً سرویس RRAS را Restart کنید تا بتوانید با L2TP متصل شوید .
✔️ در سرویس RRAS بر روی اسم سرور کلیک راست ، گزینه All Tasks و Restart را انتخاب کنید .

جهت اتصال تحت پروتوکل L2TP :
✔️ بر روی Connection اتصال راست کلیک و Propertise را انتخاب کنید .
✔️ در تب Security از بخش Type of VPN ، پروتوکل L2TP را انتخاب کنید .
✔️ در قسمت Advanced Settings ، اسم رمز که بر روی سرور تایپ کردید را وارد کنید .

نکاتی در بحث اتصال VPN :
سوال :
ما قبلا با یک User وصل شدیم ، حال چگونه به سیستم بگوییم زمان اتصال Username و Password
را دوباره بپرسد ؟
برای اینکه سیستم Username و Password که قبلا استفاده شده
است را حذف کند ، روی Connection کلیک راست و گزینه Clear Cache را انتخاب کنید .
اگر می خواهید مثلا ، یک User از بازه IP که در Address Pool تعریف شده IP نگیرد ، کافی است در سرویس Active Directory این قابلیت را بر روی User اعمال کنید .
( بر روی User مورد نظر Propertise و از تب Dial-in گزینه Assign Static IP Addresses را فعال و IP رزرو شده را تایپ کنید )
