سيساعدك هذا الدليل على إعداد OpenVPN على جهاز التوجيه Linksys OpenWRT الخاص بك. باتباع هذه الخطوات، ستتمكن من الاتصال بأمان بجهاز التوجيه الخاص بك من أي مكان في العالم باستخدام VPN.
إذا واجهت أي مشاكل أو احتجت إلى مزيد من المساعدة، يرجى الرجوع إلى منتدى OpenWRT الخاص ب أو وثائق OpenVPN.
- جهاز التوجيه OpenWRT: تأكد من أن جهاز التوجيه الخاص بك هو طراز MBE70 يعمل بنظام OpenWRT
- الوصول عبر SSH: قم بتمكين الوصول عبر SSH على جهاز التوجيه
- تحقق من حالة NAT-Traversal: إذا كنت في هذه الحالة، فهناك خطوة إضافية يجب القيام بها.
1. قم بتنزيل البرنامج النصي للإعداد
- الوصول إلى جهاز التوجيه: استخدم عميل SSH للاتصال بجهاز التوجيه الخاص بك.
ssh root@<router_ip>
- تنزيل البرنامج النصي: قم بتنزيل البرنامج النصي للإعداد على جهاز التوجيه الخاص بك.
wget -O /tmp/setup_openvpn_server.sh <link_to_script>
ملاحظة: يرجى التحقق من عناوين IP المستخدمة في متغيرات VPN_POOL و VPN_DNS للتأكد من عدم وجود تعارضات مع شبكتك. يستخدم البرنامج النصي أعلاه الشبكة 10.8.0.0/24. إذا كانت هذه الشبكة قيد الاستخدام بالفعل، سواء على جانب جهاز التوجيه أو على جانب العميل، فلن تتمكن من إنشاء اتصال VPN. في هذه الحالة، ما عليك سوى تعديل هذه المتغيرات.
2. جعل البرنامج النصي قابلاً للتنفيذ
chmod +x /tmp/setup_openvpn_server.sh
3. قم بتشغيل البرنامج النصي للإعداد
sh /tmp/setup_openvpn_server.sh
سيقوم هذا البرنامج النصي بما يلي:
- تثبيت الحزم الضرورية (openvpn-openssl و openvpn-easy-rsa).
- إنشاء المفاتيح والشهادات.
- تكوين خادم OpenVPN.
- إعداد قواعد جدار الحماية.
4. نقل ملف تكوين العميل
بعد تشغيل البرنامج النصي، تحتاج إلى نقل ملف تكوين العميل إلى جهازك المحلي:
scp root@<router_ip>:/etc/openvpn/openvpn_client.ovpn /path/to/local/machine
5. التحقق من تجاوز NAT
ستحتاج إلى تنزيل البرنامج النصي check nat وتشغيله على جهاز التوجيه الخاص بك. سيخبرك البرنامج إذا كنت في حالة NAT:
wget -O /tmp/check_nat.sh <link_to_script>
chmod +x /tmp/check_nat.sh
/tmp/check_nat.sh
يقدم البرنامج النصي التشخيص. إذا حصلت على النتيجة أدناه، فإن جهاز التوجيه الخاص بك يقع خلف NAT:
من المحتمل أن يكون الجهاز خلف NAT.
إذا لم تكن في هذه الحالة، فيمكنك الانتقال مباشرة إلى الخطوة 6.
إذا كنت في هذه الحالة، فأنت بحاجة إلى اتباع التعليمات أدناه. لاحظ أن الخطوة 5.أ إلزامية فقط إذا لم يكن لديك عنوان IP عام ثابت. إذا كنت متأكدًا من أن لديك عنوان IP عام ثابت، فيمكنك الانتقال مباشرةً إلى الخطوة 5.ب.
a. أ. إعداد خدمة DNS ديناميكية
هناك العديد من خدمات DNS الديناميكية المجانية. يمكنك اختيار أي منها تريد. على سبيل المثال، سنختار https://www.dynu.com. سيُطلب منك اختيار اسم نطاق. لنفترض أنني اخترت “remote_me.ddnsfree.com”.
الآن، تحتاج إلى تكوين جهاز التوجيه الخاص بك لإرسال عنوانه إلى الخدمة. بهذه الطريقة، إذا تغير عنوان IP الخاص بك، فلن تحتاج إلى إعداد ذلك يدويًا على dynu.com, حيث يقوم جهاز التوجيه بذلك نيابة عنك تلقائيًا.
للقيام بذلك، اتصل بجهاز التوجيه الخاص بك واختر "Dynamic DNS":

ثم قم بتعديل خدمة my_ddns_IPv4 أو أنشئ خدمة جديدة:

ثم انتقل إلى الإعدادات المتقدمة وقم بالتكوين على النحو التالي:

إذا لم تقم بذلك، سيحاول جهاز التوجيه مشاركة عنوان IP الخاص به، وهو ما سترفضه خدمة Dynamic DNS.
بمجرد الانتهاء، انقر على "حفظ وتطبيق" وارجع إلى صفحة DynamicDNS. هناك ستحتاج إلى بدء تشغيل الخدمة والنقر على "بدء":

ب. تحرير ملف OpenVPN
بالنسبة لأولئك الذين لم يكونوا بحاجة إلى خدمة DNS الديناميكي لأن لديهم عنوان IP ثابت، يرجى استرداد عنوان IP الثابت الخاص بك. يمكنك الاستعانة بمحرك البحث المفضل لديك على الإنترنت أو تشغيل أمر أكثر بساطة:
curl ifconfig.me
الآن بعد أن عرفنا عنوان IP الخاص بنا، نحتاج إلى تعديل ملف opvn الذي يصف الاتصال. افتح ملف "openvpn_client.ovpn" الذي استرجعته سابقًا وقم بتعديل السطر 4:
remote 192.168.1.22 1194
يصبح: (عنوان IP أعلاه هو مجرد مثال):
remove my_own_chosen_ddns_name.my_ddns_service.com 1194
أو إذا كنت تعرف عنوان IP العام الثابت الخاص بك:
remote x.x.x.x 1194
حسناً، احفظ الملف الآن. يمكنك الانتقال إلى الخطوة التالية.
ج. تكوين جهاز توجيه مزود خدمة الإنترنت
هذا هو الجزء الأصعب ويعتمد بشكل كبير على مزود خدمة الإنترنت الخاص بك، لذا سيكون من الصعب تقديم تفسيرات واضحة في هذا الصدد. أولاً، تحتاج إلى الاتصال بالموجه الذي يقوم بتنفيذ NAT. للعثور على عنوان IP لهذا الموجه، يمكنك إدخال الأمر التالي على موجه OpenWRT الخاص بك:
route
ستحصل على شيء مثل هذا:
جدول توجيه IP للنواة
تحتاج إلى البحث عن البوابة الافتراضية. في الحالة المذكورة أعلاه، البوابة الافتراضية هي 192.168.1.1.
الآن، تحتاج إلى الاتصال بهذا الجهاز والعثور على إعدادات التوجيه / NAT. ثم تحتاج إلى تكوين المنفذ 1194 القادم من الخارج، ليتم تحويله إلى المنفذ 1194 داخل شبكتك الخاصة إلى جهاز OpenWRT الخاص بك. هكذا يظهر ذلك في حالتي:

مرة أخرى، سيختلف هذا اعتمادًا على مزود خدمة الإنترنت الخاص بك. إذا تمكنت من إنجاز هذا الجزء، فيمكنك أخيرًا الانتقال إلى الخطوة 6!
إذا لم تتمكن من اجتياز هذه الخطوة، فلا داعي للذعر، فهناك إعداد آخر ممكن، يرجى الاطلاع على إعداد الوصول عن بُعد باستخدام ZeroTier VPN.
6. الاتصال باستخدام عميل OpenVPN
- تثبيت عميل OpenVPN: قم بتنزيل وتثبيت عميل OpenVPN لنظام التشغيل الخاص بك من الموقع الرسمي لـ OpenVPN.
- استيراد ملف التكوين: افتح عميل OpenVPN واستورد ملف openvpn_client.ovpn الذي قمت بنقله إلى جهازك المحلي.
- الاتصال بشبكة VPN: حدد التكوين الذي تم استيراده وانقر على "اتصال".
7. تحقق من الاتصال
بمجرد الاتصال، تحقق من أن عنوان IP الخاص بك قد تغير وأنه يمكنك الوصول إلى الموارد الداخلية على شبكتك. إذا لم تقم بتعديل البرنامج النصي OpenVPN_Remote.sh المقدم في بداية هذه المقالة، فيمكنك محاولة الاتصال بجهاز التوجيه الخاص بك عبر SSH باستخدام عنوان IP التالي: 10.8.0.1
المشكلات الشائعة
- رفض الاتصال: تأكد من أن جدار الحماية الخاص بالموجه يسمح بالاتصالات الواردة على منفذ OpenVPN.
أخطاء التكوين: تحقق من سجلات OpenVPN بحثًا عن أي أخطاء في التكوين:
logread -e openvpn
بالنسبة للمستخدمين المتقدمين، قد ترغب في تخصيص إعدادات OpenVPN بشكل أكبر. قم بتحرير ملف إعدادات الخادم الموجود في /etc/openvpn/openvpn_server.conf وقم بإجراء أي تغييرات ضرورية.
- استخدم كلمات مرور قوية: تأكد من أن جميع كلمات المرور قوية وآمنة.
- حافظ على تحديث البرامج: قم بتحديث OpenWRT والحزم المثبتة بانتظام إلى أحدث الإصدارات.
- مراقبة السجلات: تحقق بانتظام من سجلات OpenVPN وسجلات النظام بحثًا عن أي نشاط غير عادي.

