






السمعة:
Follow along with the video below to see how to install our site as a web app on your home screen.
ملاحظة: This feature may not be available in some browsers.
السمعة:
السمعة:
بسم الله ما شاء اللهالسلام عليكم ورحمة الله وبركاته
كيف حالك يا عزيزي القارئ؟ أتمنى أن تكون بأفضل حال وبصحة وسعادة
في موضوع اليوم سأشرح لك كيف تقوم بتوجيه حركة مرورك بالكامل من خلال شبكة VPN, و كيف تقوم بإعداد الجدار الناري. وهذا الشرح سيكون خطوة بخطوة حيث سنقوم بستخدام نظام وهمي جديد للتطبيع عليه.
هذا شرح سيكون مبني علي الموضوع السابق الخاص بشبكات VPN, ولكن ليس من الضروري قرائته إذا كان لديك خلفية عن الذي سنتحدث عنه.
في هذا الشرح سأقوم بستخدام Kali Linux ولكن بإمكانك إستخدام أي نظام أخر.
في هذا الشرح سنستخدم خدمة RiseupVPN وهي خدمة مجانية, لذلك شرح اليوم سيكون للأشخاص الذي لا يستطيعوا الدفع للخدمات المدفوعة. نبدأ على بركة الله...
مشاهدة المرفق 13915
الخطوة الأولى
يجب أن تقوم بتحديث حزم النظام من خلال الأمر التالي:
Bash:sudo apt update
الخطوة الثانية
قُم بتنزيل حزمة openvpn و iproute2, ولكن أظن أن جميع أنظمة لينكس متواجد بها هذه الحزم ولكن إذا لم تكن لديك فقم بتنزيلهم عن طريق الأمرَين التاليَيْن:
Bash:sudo apt install openvpn
Bash:sudo apt install iproute2
مشاهدة المرفق 13845
الخطوة الثالثة
ستقوم بالذهاب إلي هذا الرابط الذي سينقلك إلي صفحة Github.. ببساطة هذا اسكريبت يقوم بستخراج ملفات OpenVPN لبرنامج Riseup من قاعدة بيانات Bitmask.
سنقوم بتنزيل اسكريبت generate.sh والملف الذي بأسفله, كما موضح بالصورة.مشاهدة المرفق 13856
بعد ما قمنا بتنزيل الملفات, لن نستطيع من استخدامهم, ليه؟ ببساطة لأننا بحاجة إلى تنزيل برنامج Riseup لكي نتمكن من استخدامهم, لذلك سنقوم بتزيل برنامج RIseup من خلال الموقع الرسمي, إذا كنت تستخدم Debian فقُم بكتابة الأمر التالي:
Bash:sudo apt install riseup-vpn
ملحوظة: إذا كنت تستخدم نظام قديم من Debian أو Ubuntu فلن تستطيع تنزيل البرنامج, لذلك قم بتنزيل أحدث اصدار من نظامك.
بعد ما قُمنا بتنزيل البرنامج, يجب تشغيله, ولكن إذا كانت بلدك تفرض قيود علي VPN فاضغط على علامة الترس وقُم بختيار Preferences وحدد نوع البروتوكول, على سبيل المثال: Obfsproxy.
الخطوة الرابعة
أثناء تشغيل ال VPN سنقوم بفتح التيرمينال و نقوم بكتابة الأمور التالية.
بما أن السكريبت و الملف الأخر متواجدان علي سطح المكتب فأقوم بكتابة الأمر التالي:
بعد ذلك إذا قمنا بستخدام أمر:Bash:cd Desktop
Bash:./generate.sh
فستظهر إلينا هذه المشكلة:
zsh: permission denied
لذلك قمت بستخدام الأمر التالي لكي يتم تعديل صلاحيات ملف ال sh:
Bash:chmod +x ./generate.sh
بعد ذلك إذا قُمنا بكتابة أمر generate ستظهر لنا مشكلة أخري و هي أن ليس لدينا حزمة JSON لذلك سنقوم بكتابة الأمر التالي لتنزيلها:
Bash:sudo apt install jq
مشاهدة المرفق 13848
الخطوة الخامسة
بعد ما قمنا بتنزيل حزمة JSON, الأن يمكننا استخدام أمر generate.
ملحوظة: إذا قمت بستخدام صلاحيات Root عند قيامك بأمر generate فلن تستطيع بالدخول إلي الملف, لذلك قُم بالخروج من وضع Root و اكتب أمر generate مُجددًا.
الآن سيظهر لنا ملف يُسمى riseup-ovpn.conf مليء بالخوادم الخاصة ب Riseup.
كل ما عليك الأن هو اختيار خادم واحد فقط وقُم بحذف الباقي.
أيضاً قُم بحذف remote-random, هذه الخطوة ليست ضرورية ولكن سوف تساعدنا في خطوتنا القادمة.
بعد ذلك ستُلاحظ بأن بجانب كل عنوان IP أرقام مثل 80/53/1194, هذه الأرقام هي بورتات الاتصال.
بورت 80: خاص بال HTTP
بورت 53: خاص بال DNS
بورت 1194: خاص بإنشاء اتصال آمن بين العميل والخادم
يمكنك اختيار أي بورت تريده ويمكنك تجربة جميع البورتات إذا أردت.مشاهدة المرفق 13850
الخطوة السادسة
في هذه الخطوة سنقوم بإعداد بعض قواعد الجدار الناري التي ستمنع تسريب عنوان IP الخاص بنا.
أولاً: سنقوم بتنزيل حزمة UFW نسخة GUI من خلال الأمر التالي
Bash:sudo apt install gufw
بعد ذلك سنُلاحظ بجانب كلمة remote يوجد IP و Port, سنذهب إلي التيرمينال و نكتب الأمر التالي:
Bash:sudo ufw allow out to IP port PORT
طبعاً ستقوم بستبدال ال IP و Port بالخادم الذي تريده
بهذه الطريقة سيسمح لنا النظام بالاتصال بشبكة VPN من خلال الجدار الناري.مشاهدة المرفق 13857
الخطوة السابعة
هل لاحظت كلمة dev tun التي بالأعلى؟ الآن ستقوم بتغير كلمة tun على سبيل المثال إلى tun_myvpn ثم حفظ الملف.
بعد ذلك ستقوم بكتابة الأمريْن التاليَيْن:
Bash:sudo ufw allow in on tun_myvpn
Bash:sudo ufw allow out on tun_myvpn
هذه الخطوة ستسمح بالاتصالات الواردة والصادرة من خلال VPN.
الخطوة الثامنة
ستقوم بكتابةsudo ifconfig
في التيرمينال
ستُلاحظ بعد inet أنه يوجد IP, هذا ال Local IP الخاص بالراوتر الخاص بك, قُم بنسخه.
بعد ذلك قم بالسماح به من خلال الجدار الناري من خلال الأمر التالي:
Bash:sudo ufw allow out to LOCAL_IP
هذه الخطوة ستسمح بإنشاء اتصال فعلي.مشاهدة المرفق 13859
الخطوة التاسعة
في هذه الخطوة نحن بحاجة إلى استخدام DNS الخاص بشبكة VPN بدلاً من مزود خدمة الإنترنت.
لذلك سنقوم بتنزيل حزمة resolvconf من خلال الأمر التالي:
Bash:sudo apt install resolvconf
بعد ما قمنا بتنزيل الحزمة سنتوجه إلي هذا الأمر:
Bash:sudo nano /etc/resolv.conf
ستُلاحظ بأن كلمة nameserver بجانها ال IP الخاص بال DNS التابع لمزود خدمة الإنترنت, ستقوم بتغير هذا ال IP و وضع IP الخاص بشبكة VPN.
بما أن هذا الشرح معتمد علي RiseupVPN فال IP التابع لهم هو 10.41.0.1.
بعد ما قمت بالتعديل ستقوم بالضغط علي Ctrl x ثم Y ثم Enter.
ملاحظة: بدون صلاحية Root لن تستطيع تعديل أي شئ. وبدون هذه الخطوة يستطيع مزود خدمة الإنترنت أن يري جميع المواقع التي نزورها.مشاهدة المرفق 13866
الخطوة العاشرة
عادةً بيتم تعديل ملف ال resolvconf تلقائياً لل IP الخاص بمزود خدمة الإنترنت لذلك نحن لا نريد أن يحدث هذا معنا.
لحل هذه المشكلة يجب كتابة الأمر التالي:
Bash:sudo nano /etc/NetworkManager/NetworkManager.conf
بعد ذلك سنقوم بإضافةdns=none
تحت ال Main كما موضح بالصورة.
بعد ذلك نقوم بالخروج من الملف من خلال الطريقة السابقة.
و نقوم بكتابة الأمر التالي:
Bash:sudo systemctl restart NetworkManager
بهذه الطريقة سيتم منع أي تعديلات علي ملف ال resolvconf.مشاهدة المرفق 13868
الخطوة الحادية عشر
سنقوم بإضافة IP ال DNS علي الجدار الناري من خلال الأمر التالي:
Bash:sudo ufw allow out to 10.41.0.1
الخطوة الثانية عشر
في هذه الخطوة سنقوم بقفل الجدار الناري بالكامل سواء من التيرمينال أو من GUI.
الإختيارين نفس الشئ لا يوجد إختلاف, ولكن إذا كان لديك ufw وليس gufw فقُم بكتابة الأمريْن التاليَيْن:
Bash:sudo ufw default deny incoming
Bash:sudo ufw default deny outgoing
بهذه الطريقة إذا أي برنامج أو أي شيء آخر حاول إرسال شيْءً خارج نفق VPN فلن يستطيع إرسالها وسيتم منعه.
ملحوظة: الجدار الناري سيقوم بتشغيل نفسه في كل مرة تقوم بها بفتح الجهاز لذلك لا تقلق بشأن أي تسريبات.مشاهدة المرفق 13869
الخطوة الثالثة عشر
أخيرًا وليس آخِرًا, بعد كل هذا الكلام, الآن نريد تشغيل ال VPN.. فكيف نفعل ذلك؟
ببساطة إتبع الخطوات التالية:
الآن تم الاتصال بنجاح.. ولكن نحن الآن نُريد عندما نقوم بتشغيل الجهاز يتم الاتصال بال VPN تلقائياً, فماذا نفعل؟
أولاً: سنذهب إلى Advanced Network Configuration
ثانياً: نضغط على Wired Connection 1
ثالثاً: نقوم بالذهاب إلى General
رابعاً: نضغط على Automatically Connect to VPN
خامساً: تقوم بالضغط على Save
كما هو موضح بالصورة الأتية:
مشاهدة المرفق 13878
الخطوة الرابعة عشر
عزيزي القارئ: هو لسة في رابعة عشر؟
أنا: احم احم, انت زهقت مني ولا ايه يسطا؟... يا عزيزي لازم أعطيك المعلومة كاملة وإلا كدا هبقي بكون بكروتك.
تعال نرجع تاني لموضوعنا.
في هذه الخطوة ستقوم بإعادة تشغيل النظام و عندما تفعل ذلك سيتم الاتصال بال VPN تلقائياً, ولكن إذا حاولت التصفح علي الإنترنت فلن يتم أي اتصال وستظهر هذه المشكلة:
طب ماهو حل هذه المشكلة؟.. الحل بسيط لأبعد الحدود.
بكل بساطة ستذهب إلى التيرمينال وتقُم بكتابة الأمر التالي:
Bash:sudo nano /etc/resolv.conf
الملف سيكون فارغ لذلك قم بكتابة IP السيرفر كما هو موضح بالصورة التالية:
طب لماذا هذا حدث وما هو سبب هذه المشكلة؟
ببساطة يا عزيزي نحن قُمنا من قبل بتعطيل أي تغيرات علي ملف resolvconf, لذلك في كل مرة ستقوم فيها بإعادة تشغيل الجهاز أو قفله و فتحه سيكون إجباري أنك تقوم بكتابة ال IP, وهذا ليس عيب, بجانب أن ال IP صغير وسهل حفظه.
بكدا احنا انتهينا من شرح OpenVPN على الجهاز, ولكن أحياناً بيتم تسريب IP الخاص بك على المتصفحات من خلال WebRTC لذلك سأقوم بشرح كيف تقوم بقفله.
مُستخدمين FIrefox: يمكنهم قفله من خلال كتابة about:config و كتابة
media.peerconnection.enabled والضغط على كلمة true لتحويلها إلى false.
مُستخدمين Chrome: يمكنهم قفله من خلال إضافة (Extension) تُسمى WebRTC Control.
بكدا احنا انتهينا من شرح كل حاجة متعلقة بال VPN, ولكن يوجد شيء أخير وهو IPv6, أحياناً يقوم بالتسريب ولكن هذا في حالات نادرة, ولكن دعنا نقفله إحطياطياً.
مشاهدة المرفق 13915
هناك 3 طرق سوف أشرحهم لقفل IPv6 نهائياً:
الطريقة الأولى:
أولاً: ستقوم بالذهاب إلى Advanced Network Configuration
ثانياً: الضغط على Wired Connection 1
ثالثاً: الذهاب إلى IPv6 Settings
رابعاً: ستقوم بالضغط على Method و تحويلها من Automatic إلي Disabled
خامساً: تقوم بالضغط على Save.مشاهدة المرفق 13889
الطريقة الثانية:
سنقوم بنسخ هذا الأمر و لصقه في التيرمينال:
Bash:echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.conf' >/dev/null
ثم سنكتب الأمر التالي:
Bash:sudo nano /etc/sysctl.conf
بعد ذلك سنذهب لأسفل الملف و نقُم بإضافة التالي:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
ملحوظة: قُم بتغير ال eth0 إلى ال Interface الخاص بك, علي سبيل المثال أنا عندي بيستخدم eth0 لذلك قمت بوضعه.
الآن قُم بحفظ الملف و الخروج منه.
وقم بكتابة الأمر التالي للتأكد من التغيرات التي فعلناها:
Bash:sudo sysctl -p
مشاهدة المرفق 13897
الطريقة الثالثة:
سنقوم بكتابة الأمر التالي في التيرمينال:
Bash:sudo nano /etc/default/grub
بعد ذلك سيفتح لك ملف, في هذا الملف هتلاحظ كلمة "GRUB_CMDLINE_LINUX"
سنقوم بإضافة الآتي بداخله:
ipv6.disable=1
الآن قُم بحفظ الملف و الخروج منه.مشاهدة المرفق 13898
الأن بعد ما انتهينا من كل شىء, دعنا نختبر و نرى هل يوجد أي تسريبات أم لا.
كما نري, لا يوجد أي تسريبات وكل حاجة مستقرة و ماشية زي العسل.
1- يمكننا استخدام TorDNS بدلاً من مزود خدمة VPN ولكني أردت أن الشرح يكون بسيط, لذلك سيتم كتابة موضوع خاص به في وقتً لاحق.
2- يُمكننا استخدام متصفح Tor أو Proxychains بعد ال VPN لكي نُحقق أقصي مجهولية و آمان, بهذه الطريقة مزود خدمة الإنترنت لن يعرف بأننا قُمنا بستخدام Tor.
3- إذا حابب تقرأ المزيد عن UFW و Proxychains, أنصحك بقراءة موضوع الأخ غيث عن UFW, و الأخ ماتريكس عن Proxychains. الجماعة قاموا بشرح أكثر من رائع.
4- وجب التنبيه بأن آخر تحديث لبرنامج Riseup الذي تم اصداره منذ أيام قليلة يوجد به بعض المشاكل علي نظام ويندوز و لينكس لذلك أنصح بستخدام نظام وهمي للتجربة.
5- لا تقُم بستخدام أي خدمات أخري مجانية سواء مكركة أو غير مكركة, ولا أنصح بأي خدمة إلا Riseup ﻷنها هي الخدمة الوحيدة التي تُحقق كل متطلباتنا. لذلك شرح اليوم يغنيك عن أي خدمة أخري.
6- يمكننا إضافة العديد من خوادم Riseup وبذلك في كل مرة ستقوم بإعادة تشغيل النظام سيتم إنشاء اتصال مختلف في بلد مختلفة و خادم مخختلف, ولكني أردت أن الشرح يكون بسيط.
لقد تعرفنا في شرح اليوم علي العديد من الأشياء, أتمنى أن الشرح كان سلس و نال إعجابكم.
لو أي شخص واجه مشاكل أثناء أي خطوة أو في فهم أي نقطة.. فقط قم بكتابة تعليق و بإذن الله هقوم بشرحها.
دُمتم في حفظ الله ورعايته
والسلام عليكم ورحمة الله وبركاته
السمعة:
ما شاء اللهالسلام عليكم ورحمة الله وبركاته
كيف حالك يا عزيزي القارئ؟ أتمنى أن تكون بأفضل حال وبصحة وسعادة
في موضوع اليوم سأشرح لك كيف تقوم بتوجيه حركة مرورك بالكامل من خلال شبكة VPN, و كيف تقوم بإعداد الجدار الناري. وهذا الشرح سيكون خطوة بخطوة حيث سنقوم بستخدام نظام وهمي جديد للتطبيع عليه.
هذا شرح سيكون مبني علي الموضوع السابق الخاص بشبكات VPN, ولكن ليس من الضروري قرائته إذا كان لديك خلفية عن الذي سنتحدث عنه.
في هذا الشرح سأقوم بستخدام Kali Linux ولكن بإمكانك إستخدام أي نظام أخر.
في هذا الشرح سنستخدم خدمة RiseupVPN وهي خدمة مجانية, لذلك شرح اليوم سيكون للأشخاص الذي لا يستطيعوا الدفع للخدمات المدفوعة. نبدأ على بركة الله...
مشاهدة المرفق 13915
الخطوة الأولى
يجب أن تقوم بتحديث حزم النظام من خلال الأمر التالي:
Bash:sudo apt update
الخطوة الثانية
قُم بتنزيل حزمة openvpn و iproute2, ولكن أظن أن جميع أنظمة لينكس متواجد بها هذه الحزم ولكن إذا لم تكن لديك فقم بتنزيلهم عن طريق الأمرَين التاليَيْن:
Bash:sudo apt install openvpn
Bash:sudo apt install iproute2
مشاهدة المرفق 13845
الخطوة الثالثة
ستقوم بالذهاب إلي هذا الرابط الذي سينقلك إلي صفحة Github.. ببساطة هذا اسكريبت يقوم بستخراج ملفات OpenVPN لبرنامج Riseup من قاعدة بيانات Bitmask.
سنقوم بتنزيل اسكريبت generate.sh والملف الذي بأسفله, كما موضح بالصورة.مشاهدة المرفق 13856
بعد ما قمنا بتنزيل الملفات, لن نستطيع من استخدامهم, ليه؟ ببساطة لأننا بحاجة إلى تنزيل برنامج Riseup لكي نتمكن من استخدامهم, لذلك سنقوم بتزيل برنامج RIseup من خلال الموقع الرسمي, إذا كنت تستخدم Debian فقُم بكتابة الأمر التالي:
Bash:sudo apt install riseup-vpn
ملحوظة: إذا كنت تستخدم نظام قديم من Debian أو Ubuntu فلن تستطيع تنزيل البرنامج, لذلك قم بتنزيل أحدث اصدار من نظامك.
بعد ما قُمنا بتنزيل البرنامج, يجب تشغيله, ولكن إذا كانت بلدك تفرض قيود علي VPN فاضغط على علامة الترس وقُم بختيار Preferences وحدد نوع البروتوكول, على سبيل المثال: Obfsproxy.
الخطوة الرابعة
أثناء تشغيل ال VPN سنقوم بفتح التيرمينال و نقوم بكتابة الأمور التالية.
بما أن السكريبت و الملف الأخر متواجدان علي سطح المكتب فأقوم بكتابة الأمر التالي:
بعد ذلك إذا قمنا بستخدام أمر:Bash:cd Desktop
Bash:./generate.sh
فستظهر إلينا هذه المشكلة:
zsh: permission denied
لذلك قمت بستخدام الأمر التالي لكي يتم تعديل صلاحيات ملف ال sh:
Bash:chmod +x ./generate.sh
بعد ذلك إذا قُمنا بكتابة أمر generate ستظهر لنا مشكلة أخري و هي أن ليس لدينا حزمة JSON لذلك سنقوم بكتابة الأمر التالي لتنزيلها:
Bash:sudo apt install jq
مشاهدة المرفق 13848
الخطوة الخامسة
بعد ما قمنا بتنزيل حزمة JSON, الأن يمكننا استخدام أمر generate.
ملحوظة: إذا قمت بستخدام صلاحيات Root عند قيامك بأمر generate فلن تستطيع بالدخول إلي الملف, لذلك قُم بالخروج من وضع Root و اكتب أمر generate مُجددًا.
الآن سيظهر لنا ملف يُسمى riseup-ovpn.conf مليء بالخوادم الخاصة ب Riseup.
كل ما عليك الأن هو اختيار خادم واحد فقط وقُم بحذف الباقي.
أيضاً قُم بحذف remote-random, هذه الخطوة ليست ضرورية ولكن سوف تساعدنا في خطوتنا القادمة.
بعد ذلك ستُلاحظ بأن بجانب كل عنوان IP أرقام مثل 80/53/1194, هذه الأرقام هي بورتات الاتصال.
بورت 80: خاص بال HTTP
بورت 53: خاص بال DNS
بورت 1194: خاص بإنشاء اتصال آمن بين العميل والخادم
يمكنك اختيار أي بورت تريده ويمكنك تجربة جميع البورتات إذا أردت.مشاهدة المرفق 13850
الخطوة السادسة
في هذه الخطوة سنقوم بإعداد بعض قواعد الجدار الناري التي ستمنع تسريب عنوان IP الخاص بنا.
أولاً: سنقوم بتنزيل حزمة UFW نسخة GUI من خلال الأمر التالي
Bash:sudo apt install gufw
بعد ذلك سنُلاحظ بجانب كلمة remote يوجد IP و Port, سنذهب إلي التيرمينال و نكتب الأمر التالي:
Bash:sudo ufw allow out to IP port PORT
طبعاً ستقوم بستبدال ال IP و Port بالخادم الذي تريده
بهذه الطريقة سيسمح لنا النظام بالاتصال بشبكة VPN من خلال الجدار الناري.مشاهدة المرفق 13857
الخطوة السابعة
هل لاحظت كلمة dev tun التي بالأعلى؟ الآن ستقوم بتغير كلمة tun على سبيل المثال إلى tun_myvpn ثم حفظ الملف.
بعد ذلك ستقوم بكتابة الأمريْن التاليَيْن:
Bash:sudo ufw allow in on tun_myvpn
Bash:sudo ufw allow out on tun_myvpn
هذه الخطوة ستسمح بالاتصالات الواردة والصادرة من خلال VPN.
الخطوة الثامنة
ستقوم بكتابةsudo ifconfig
في التيرمينال
ستُلاحظ بعد inet أنه يوجد IP, هذا ال Local IP الخاص بالراوتر الخاص بك, قُم بنسخه.
بعد ذلك قم بالسماح به من خلال الجدار الناري من خلال الأمر التالي:
Bash:sudo ufw allow out to LOCAL_IP
هذه الخطوة ستسمح بإنشاء اتصال فعلي.مشاهدة المرفق 13859
الخطوة التاسعة
في هذه الخطوة نحن بحاجة إلى استخدام DNS الخاص بشبكة VPN بدلاً من مزود خدمة الإنترنت.
لذلك سنقوم بتنزيل حزمة resolvconf من خلال الأمر التالي:
Bash:sudo apt install resolvconf
بعد ما قمنا بتنزيل الحزمة سنتوجه إلي هذا الأمر:
Bash:sudo nano /etc/resolv.conf
ستُلاحظ بأن كلمة nameserver بجانها ال IP الخاص بال DNS التابع لمزود خدمة الإنترنت, ستقوم بتغير هذا ال IP و وضع IP الخاص بشبكة VPN.
بما أن هذا الشرح معتمد علي RiseupVPN فال IP التابع لهم هو 10.41.0.1.
بعد ما قمت بالتعديل ستقوم بالضغط علي Ctrl x ثم Y ثم Enter.
ملاحظة: بدون صلاحية Root لن تستطيع تعديل أي شئ. وبدون هذه الخطوة يستطيع مزود خدمة الإنترنت أن يري جميع المواقع التي نزورها.مشاهدة المرفق 13866
الخطوة العاشرة
عادةً بيتم تعديل ملف ال resolvconf تلقائياً لل IP الخاص بمزود خدمة الإنترنت لذلك نحن لا نريد أن يحدث هذا معنا.
لحل هذه المشكلة يجب كتابة الأمر التالي:
Bash:sudo nano /etc/NetworkManager/NetworkManager.conf
بعد ذلك سنقوم بإضافةdns=none
تحت ال Main كما موضح بالصورة.
بعد ذلك نقوم بالخروج من الملف من خلال الطريقة السابقة.
و نقوم بكتابة الأمر التالي:
Bash:sudo systemctl restart NetworkManager
بهذه الطريقة سيتم منع أي تعديلات علي ملف ال resolvconf.مشاهدة المرفق 13868
الخطوة الحادية عشر
سنقوم بإضافة IP ال DNS علي الجدار الناري من خلال الأمر التالي:
Bash:sudo ufw allow out to 10.41.0.1
الخطوة الثانية عشر
في هذه الخطوة سنقوم بقفل الجدار الناري بالكامل سواء من التيرمينال أو من GUI.
الإختيارين نفس الشئ لا يوجد إختلاف, ولكن إذا كان لديك ufw وليس gufw فقُم بكتابة الأمريْن التاليَيْن:
Bash:sudo ufw default deny incoming
Bash:sudo ufw default deny outgoing
بهذه الطريقة إذا أي برنامج أو أي شيء آخر حاول إرسال شيْءً خارج نفق VPN فلن يستطيع إرسالها وسيتم منعه.
ملحوظة: الجدار الناري سيقوم بتشغيل نفسه في كل مرة تقوم بها بفتح الجهاز لذلك لا تقلق بشأن أي تسريبات.مشاهدة المرفق 13869
الخطوة الثالثة عشر
أخيرًا وليس آخِرًا, بعد كل هذا الكلام, الآن نريد تشغيل ال VPN.. فكيف نفعل ذلك؟
ببساطة إتبع الخطوات التالية:
الآن تم الاتصال بنجاح.. ولكن نحن الآن نُريد عندما نقوم بتشغيل الجهاز يتم الاتصال بال VPN تلقائياً, فماذا نفعل؟
أولاً: سنذهب إلى Advanced Network Configuration
ثانياً: نضغط على Wired Connection 1
ثالثاً: نقوم بالذهاب إلى General
رابعاً: نضغط على Automatically Connect to VPN
خامساً: تقوم بالضغط على Save
كما هو موضح بالصورة الأتية:
مشاهدة المرفق 13878
الخطوة الرابعة عشر
عزيزي القارئ: هو لسة في رابعة عشر؟
أنا: احم احم, انت زهقت مني ولا ايه يسطا؟... يا عزيزي لازم أعطيك المعلومة كاملة وإلا كدا هبقي بكون بكروتك.
تعال نرجع تاني لموضوعنا.
في هذه الخطوة ستقوم بإعادة تشغيل النظام و عندما تفعل ذلك سيتم الاتصال بال VPN تلقائياً, ولكن إذا حاولت التصفح علي الإنترنت فلن يتم أي اتصال وستظهر هذه المشكلة:
طب ماهو حل هذه المشكلة؟.. الحل بسيط لأبعد الحدود.
بكل بساطة ستذهب إلى التيرمينال وتقُم بكتابة الأمر التالي:
Bash:sudo nano /etc/resolv.conf
الملف سيكون فارغ لذلك قم بكتابة IP السيرفر كما هو موضح بالصورة التالية:
طب لماذا هذا حدث وما هو سبب هذه المشكلة؟
ببساطة يا عزيزي نحن قُمنا من قبل بتعطيل أي تغيرات علي ملف resolvconf, لذلك في كل مرة ستقوم فيها بإعادة تشغيل الجهاز أو قفله و فتحه سيكون إجباري أنك تقوم بكتابة ال IP, وهذا ليس عيب, بجانب أن ال IP صغير وسهل حفظه.
بكدا احنا انتهينا من شرح OpenVPN على الجهاز, ولكن أحياناً بيتم تسريب IP الخاص بك على المتصفحات من خلال WebRTC لذلك سأقوم بشرح كيف تقوم بقفله.
مُستخدمين FIrefox: يمكنهم قفله من خلال كتابة about:config و كتابة
media.peerconnection.enabled والضغط على كلمة true لتحويلها إلى false.
مُستخدمين Chrome: يمكنهم قفله من خلال إضافة (Extension) تُسمى WebRTC Control.
بكدا احنا انتهينا من شرح كل حاجة متعلقة بال VPN, ولكن يوجد شيء أخير وهو IPv6, أحياناً يقوم بالتسريب ولكن هذا في حالات نادرة, ولكن دعنا نقفله إحطياطياً.
مشاهدة المرفق 13915
هناك 3 طرق سوف أشرحهم لقفل IPv6 نهائياً:
الطريقة الأولى:
أولاً: ستقوم بالذهاب إلى Advanced Network Configuration
ثانياً: الضغط على Wired Connection 1
ثالثاً: الذهاب إلى IPv6 Settings
رابعاً: ستقوم بالضغط على Method و تحويلها من Automatic إلي Disabled
خامساً: تقوم بالضغط على Save.مشاهدة المرفق 13889
الطريقة الثانية:
سنقوم بنسخ هذا الأمر و لصقه في التيرمينال:
Bash:echo 'blacklist ipv6' | sudo tee -a '/etc/modprobe.d/blacklist.conf' >/dev/null
ثم سنكتب الأمر التالي:
Bash:sudo nano /etc/sysctl.conf
بعد ذلك سنذهب لأسفل الملف و نقُم بإضافة التالي:
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1
ملحوظة: قُم بتغير ال eth0 إلى ال Interface الخاص بك, علي سبيل المثال أنا عندي بيستخدم eth0 لذلك قمت بوضعه.
الآن قُم بحفظ الملف و الخروج منه.
وقم بكتابة الأمر التالي للتأكد من التغيرات التي فعلناها:
Bash:sudo sysctl -p
مشاهدة المرفق 13897
الطريقة الثالثة:
سنقوم بكتابة الأمر التالي في التيرمينال:
Bash:sudo nano /etc/default/grub
بعد ذلك سيفتح لك ملف, في هذا الملف هتلاحظ كلمة "GRUB_CMDLINE_LINUX"
سنقوم بإضافة الآتي بداخله:
ipv6.disable=1
الآن قُم بحفظ الملف و الخروج منه.مشاهدة المرفق 13898
الأن بعد ما انتهينا من كل شىء, دعنا نختبر و نرى هل يوجد أي تسريبات أم لا.
كما نري, لا يوجد أي تسريبات وكل حاجة مستقرة و ماشية زي العسل.
1- يمكننا استخدام TorDNS بدلاً من مزود خدمة VPN ولكني أردت أن الشرح يكون بسيط, لذلك سيتم كتابة موضوع خاص به في وقتً لاحق.
2- يُمكننا استخدام متصفح Tor أو Proxychains بعد ال VPN لكي نُحقق أقصي مجهولية و آمان, بهذه الطريقة مزود خدمة الإنترنت لن يعرف بأننا قُمنا بستخدام Tor.
3- إذا حابب تقرأ المزيد عن UFW و Proxychains, أنصحك بقراءة موضوع الأخ غيث عن UFW, و الأخ ماتريكس عن Proxychains. الجماعة قاموا بشرح أكثر من رائع.
4- وجب التنبيه بأن آخر تحديث لبرنامج Riseup الذي تم اصداره منذ أيام قليلة يوجد به بعض المشاكل علي نظام ويندوز و لينكس لذلك أنصح بستخدام نظام وهمي للتجربة.
5- لا تقُم بستخدام أي خدمات أخري مجانية سواء مكركة أو غير مكركة, ولا أنصح بأي خدمة إلا Riseup ﻷنها هي الخدمة الوحيدة التي تُحقق كل متطلباتنا. لذلك شرح اليوم يغنيك عن أي خدمة أخري.
6- يمكننا إضافة العديد من خوادم Riseup وبذلك في كل مرة ستقوم بإعادة تشغيل النظام سيتم إنشاء اتصال مختلف في بلد مختلفة و خادم مخختلف, ولكني أردت أن الشرح يكون بسيط.
لقد تعرفنا في شرح اليوم علي العديد من الأشياء, أتمنى أن الشرح كان سلس و نال إعجابكم.
لو أي شخص واجه مشاكل أثناء أي خطوة أو في فهم أي نقطة.. فقط قم بكتابة تعليق و بإذن الله هقوم بشرحها.
دُمتم في حفظ الله ورعايته
والسلام عليكم ورحمة الله وبركاته
السمعة:
بسم الله ما شاء الله
الله يعطيك العافية على هذا الشرح
السمعة: