
OpenVPN چیست؟
اوپن وی پی ان یا OpenVPN یه پروژه اوپن سورس هست که باهاش میشه ارتباطات وی پی ان نقطه به نقطه (Point-to-Point) یا سایت به سایت (Site-to-Site) رو برقرار کرد.
اوپن وی پی ان به علت راحتی استفاده، پایداری بالا و امنیت، به یه سرویس محبوب تبدیل شده. این سرویس امکان ارتباط از بستر پروتکلهای TCP و UDP رو داره. ضمنا از IPV6 و رمزنگاری TLS هم پشتیبانی میکنه.
OpenVPN مخفف Open Virtual Private Network می باشد که به آن OVPN نیز گفته می شود که توسط پروتکل TCP و پورت 1194 در شبکه فعالیت می نماید. باید دقت داشته باشید چنانچه قصد استفاده از OpenVPN را دارید پورت 1194 توسط فایروال مسدود نشده باشد. OpenVPN در حالت کلی هم بر روی بسیاری از پلتفرم ها هم توسط TCP و هم UDP قابل استفاده می باشد اما در میکروتیک تنها از TCP می توان بهره برد و UDP پشتیبانی نمی گردد.
در نظر داشته باشید که OpenVPN به واسطه SSL Certificate کار می کند و به همین منظور می بایست حتما از یک SSL Certificate جهت برقراری ارتباط استفاده نمود. در OpenVPN از رمزنگاری ( Encryption ) های مختلفی می توان بهره برد و بنا به نیاز می توان از گزینه های در دسترس، نوع رمزنگاری مورد نظر را انتخاب نمود.
ویژگی های OpenVPN :
- تانلینگ هر نوع Subnetwork ویا اینترفیس مجازی بر روی بستر TCP و UDP
- سازگاری با NAT
- رمزنگاری اطلاعات با استفاده از کتابخانه های OpenSSL
- امنیت در OpenVPN بسیار بالا می باشد.
- امکان تغییر پورت 1194 به پورت های دیگر مانند 443 که این پورت در قالب موارد توسط فایروال ها مسدود نخواهد گردید.
- به دلیل بهره گیری از TCP یک ارتباط اتصال گرا خواهیم داشت و به همین دلیل بسته ها با قابلیت اطمینان بالا در OpenVPN جا به جا خواهند گردید.
معایب OpenVPN
راه اندازی و تنظیمات OpenVPN بخصوص در سمت Client دشوار می باشد چرا که تنظیمات در سمت Client باید به صورت دستی انجام پذیرد.
نیاز به Third Party Application ها در پلتفرم های مختلف جهت اتصال به VPN Server.
به دلیل رمزنگاری قوی تر ممکن است کاهش سرعت در ارتباطات را تجربه نماییم.
OpenVPNمیکروتیک چطوری کار میکنه؟
ما میتونیم روتر میکروتیک یا سرور مجازی میکروتیک رو به یه سرور اوپن وی پی ان تبدیل کنیم تا کاربران بتونن از بستر اینترنت به شبکه متصل بشن.
در حال حاضر اوپن وی پی ان میکروتیک امکانات زیر رو نداره:
- استفاده از بستر UDP
- فشرده سازی LZO
- پروتکل TLS
- احراز هویت بدون Username و Password
مراحل راه اندازی OPEN VPN در میکروتیک :
- در مرحله اول باید برای کلاینتها OPEN VPN یک IP POOl ایجاد کنیم. برای این کار مسیر زیر را دنبال کنید:
از طریق وینباکس وارد تنظیمات روتر خود شوید و سپس از قسمت منو به IP > POOL > Add IP POOL بروید.
به طور مثال من دامنه 192.168.100.2-192.168.100.254 را در قسمت POOL وارد کردم.
در نظر داشته باشید آدرس وارد شده به کلاینت های OPEN VPN اختصاص داده میشود.
- در این مرحله باید یک پروفایل OPEN VPN ایجاد کنید. برای این کار از منو به قسمت PPP > Profile > Add New Profile بروید.
در فیلد Name اسم open-vpn-profile را وارد کنید.
Local Address یا آدرس محلی 192.168.100.1 همان دروازه Address Pool است که برای open-vpn-pool ایجاد کردیم.
در این مرحله Remote Address را از منوی کشویی IP Pool که در مرحله قبل ساختیم انتخاب میکنیم.
در آخر بر روی دکمه Apply و سپس OK کلیک کنید.
- حالا باید یک نام کاربری و رمز عبور برای کاربر ایجاد کنیم. برای این کار از منو به قسمت PPP > Secrets > Add New Secre بروید.
مرحله 3 برای این می باشد که در هنگام اتصال باید نام کاربری و رمز عبور را به سرویس OPN VPN ارائه دهیم.
پس از وارد کردن یوزر نیم و پسورد Type رو برابر OPENVPN قرار میدهیم Profile را از منوی کشویی IP Pool که از قبل ایجاد کردهایم انتخاب میکنیم.
- در این مرحله باید گواهی نامه هایی برای سرور و کاربران از راه دور ایجاد کنید.
از منوی به ترتیب به قسمت System > Certificates > Add new Certificate بروید.
تب General در فیلد Name نامی را انتخاب نمایید. نامی که من در این آموزش وارد کردم CA میباشد،درادامه مدت اعتبار گواهی رو 3650 روز یا 10 سال انتخاب میکنیم.
در ادامه بر روی تب Key Usage کلیک کنید و گزینههای Key cert. sign و crl sign را انتخاب نماییدو سپس بر روی گزینه Apply و بعد Sign کلیک کنید.
پنجره Sign در فیلد کشویی Certificate همان نامی که برای Certificate (CA) گذاشتیم را انتخاب میکنیم.
حالا در فیلد CA CRL Host آی.پی 127.0.01 یا آدرس IP Public روتر را وارد میکنیم و در آخر بر روی گزینه Start کلیک کنید.
در مرحله بعد باید یک Server Certificate , Client Certificate ایجاد کنیم که برای اینکار مشابه قسمت قبل به قسمت System > Certificates > Add new Certificate بروید.
تب General در فیلد Name نامی را انتخاب نمایید.درادامه مدت اعتبار گواهی رو 3650 روز یا 10 سال انتخاب میکنیم.
در ادامه بر روی تب Key Usage کلیک کنید و گزینههای digital signature و tls server و Key encipherment را انتخاب نمایید و سپس بر روی گزینه Apply و بعد Sign کلیک کنید.
پنجره Sign در فیلد کشویی Certificate همان نامی که برای Certificate (CA) گذاشتیم را انتخاب میکنیم.
برای Client Certificate هم دقیقا همین مراحل رو انجام دهید با این تفاوت که در قسمت Key Usage گزینه ی tls Client رو انتخاب نمایید .
توجه داشته باشید از هر سه Certificate ساخته شده باید خروجی گرفت .
- در این مرحله وارد قسمت PPP> Interface > OVPN Server شوید و گزینه Enable را فعال نمایید ، در ادامه در تب کشویی Certificate سرور Certificate که در مرحله قبل ساختیم را انتخاب میکنیم و تیک گزینه های زیر را میزنیم :
- sha 1
- aes 256
در اینجا راه اندازی OPEN VPN به پایان رسید و برای سمت کلاینت کافیست فایل زیر را متناسب با سرور راه اندازی شده وارد نرم افزار OPENVPN نمایید .
client dev tun proto tcp-client remote 192.168.1.1 #Router IP Address port 1194 nobind persist-key persist-tun tls-client remote-cert-tls server ca cert_export_CA.crt #CA Certificate Name cert cert_export_CLIENT1.crt # Server Certificate Name key cert_export_CLIENT1.key # Client Certificate Name verb 4 mute 10 cipher AES-256-CBC auth SHA1 auth-user-pass secret auth-nocache ;redirect-gateway def1
فایل را با نام دلخواه ذخیره و پسوند آن را از txt. به ovpn. تغییر دهید.مجدد یک فایل Notpad باز کنید و یوزر نیم و پسوردی که در مرحله 3 ایجاد کردیم را درون آن مینویسیم و فایل را بدون پسوند با نام secret ذخیره می نماییم.