أجهزة الكمبيوتر شبابيك إنترنت

إعداد اتصال VPN في Linux. تكوين اتصال VPN في Linux تعليمي لتكوين خوادم vpn على ubuntu

لا يُسمع الآن اختصار VPN إلا إذا لم يتعامل مع الكمبيوتر مطلقًا. ما هو ولماذا هو مطلوب وكيف تقوم بإعداده بنفسك؟

ما هو VPN ولماذا هو مطلوب؟

VPN (الشبكة الافتراضية الخاصة) هي شبكة افتراضية خاصة ، وهي طريقة لدمج العديد من أجهزة الكمبيوتر ، الموجودة فعليًا على مسافة ما من بعضها البعض ، في شبكة منطقية واحدة.

يمكن استخدام شبكات VPN لأغراض مختلفة - من تنظيم شبكة للعمل / الألعاب إلى الوصول إلى الإنترنت. عند القيام بذلك ، يجب أن تفهم المسؤولية القانونية المحتملة عن أفعالك.

في روسيا ، لا يُعاقب استخدام VPN ، باستثناء حالات الاستخدام المتعمد لأغراض غير قانونية. أي ، إذا كنت تريد الانتقال إلى موقع الويب الخاص برئيس دولة مجاورة (على سبيل المثال ، الصومال) وكتابة مدى سوء حالته ، أثناء إخفاء عنوان IP الخاص بك ، فهذا في حد ذاته ليس انتهاكًا (بشرط أن يكون محتوى بيان لا يخالف القوانين) ... لكن يعتبر استخدام هذه التكنولوجيا للوصول إلى الموارد المحظورة في روسيا جريمة.

بمعنى ، يمكنك اللعب مع الأصدقاء عبر الشبكة والعمل عن بُعد في شبكة المؤسسة باستخدام VPN ، لكن لا يمكنك قراءة كل أنواع المواقع السيئة. مع هذا تم تسويتها. الآن دعنا ننتقل مباشرة إلى الإعداد.

إعداد جانب الخادم على Ubuntu Linux

بالنسبة إلى جانب الخادم ، من الأفضل استخدام Linux ، في هذا الصدد يسهل العمل معه. أبسط خيار هو PPTP ، لا يتطلب تثبيت الشهادات على أجهزة الكمبيوتر العميلة، يتم إجراء المصادقة عن طريق اسم المستخدم وكلمة المرور... سوف نستخدمه.

أولاً ، قم بتثبيت الحزم المطلوبة:

سودو نانو /etc/pptpd.conf

إذا كنا بحاجة إلى أكثر من 100 اتصال متزامن ، فابحث عن معلمة "links" ، وقم بإلغاء التعليق عليها وحدد القيمة المطلوبة ، على سبيل المثال:

التوصيلات 200

إذا احتجنا إلى إرسال حزم بث عبر الشبكة الافتراضية ، فيجب أن نتأكد من أن المعلمة bcrelay غير موصوفة أيضًا:

Bcrelay eth1

بعد ذلك ، انتقل إلى نهاية الملف وأضف إعدادات العنوان:

لوكاليب 10.10.10.1 عن بعد 10.10.10.2-254 استمع 11.22.33.44

تحدد المعلمة الأولى عنوان IP للخادم في الشبكة المحلية ، وتحدد الثانية نطاق عناوين IP الصادرة للعملاء (يجب أن يوفر النطاق إمكانية العدد المحدد من الاتصالات ، ومن الأفضل تخصيص العناوين بهامش) ، يحدد الثالث العنوان الخارجي للاستماع إلى الواجهات لتلقي الاتصالات الواردة. بمعنى ، إذا كان هناك عدة عناوين خارجية ، فيمكن الاستماع إلى عنوان واحد فقط. إذا لم يتم تحديد المعلمة الثالثة ، فسيتم الاستماع إلى جميع العناوين الخارجية المتاحة.

احفظ الملف وأغلقه. نحدد إعدادات ضبط إضافية في ملف / etc / ppp / pptpd-options:

سودو نانو / etc / ppp / pptpd-options

بادئ ذي بدء ، نتأكد من أن لدينا سطورًا غير موصوفة تحظر استخدام طرق المصادقة القديمة وغير الآمنة:

رفض-باب رفض-الفصل رفض-mschap

نتحقق أيضًا من تمكين خيار proxyarp (لم يتم التعليق على السطر المقابل) بالإضافة إلى تمكين أو تعطيل الاتصالات المتعددة لمستخدم واحد أو التعليق (السماح) أو إلغاء التعليق (تعطيل) خيار القفل.

نقوم أيضًا بحفظ الملف وإغلاقه. يبقى لإنشاء المستخدمين:

سودو نانو / etc / ppp / chap-secrets

يتم تخصيص سطر واحد لكل مستخدم VPN ، يُشار فيه إلى اسمه وعنوانه البعيد وكلمة المرور والعنوان المحلي بالتسلسل (فاصل - مسافة).

يمكن تحديد العنوان البعيد إذا كان لدى المستخدم عنوان IP خارجي ثابت وسيتم استخدامه فقط ، وإلا فمن الأفضل تحديد علامة النجمة بحيث يمكنك قبول الاتصال بدقة. يجب تحديد محلي إذا كنت تريد أن يتم تخصيص عنوان IP نفسه للمستخدم في الشبكة الافتراضية. على سبيل المثال:

المستخدم 1 * كلمة المرور 1 * المستخدم 2 11.22.33.44 كلمة المرور 2 * المستخدم 3 * كلمة المرور 3 10.10.10.10

بالنسبة للمستخدم 1 ، سيتم قبول الاتصالات من أي عنوان خارجي ، وسيتم تخصيص أول اتصال محلي متاح. بالنسبة للمستخدم 2 ، سيخصص أول عنوان محلي متاح ، ولكن لن يتم قبول الاتصالات إلا من 11.22.33.44. بالنسبة للمستخدم 3 ، يتم قبول الاتصالات من أي مكان ، ولكن سيتم تخصيص العنوان المحلي دائمًا 10.10.10.10 ، والذي حجزناه له.

هذا يكمل تكوين خادم VPN ، أعد تشغيله (لا تحتاج إلى إعادة تشغيل جهاز الكمبيوتر الخاص بك في نظام Linux):

إعادة تشغيل خدمة سودو pptpd

تكوين عملاء VPN

يمكن تكوين جزء العميل لأي نظام تشغيل ، سأستخدمه كمثال نظام التشغيل Ubuntu Linux 16.04.

على كمبيوتر العميل ، افتح اتصالات الشبكة (تظهر لقطات الشاشة لـ Ubuntu + Cinnamon ، بالنسبة لجنوم ، يتم ذلك بنفس الطريقة ، في Kubuntu يبدو أنه لن يسبب أي صعوبات). انقر فوق الزر "إضافة" وحدد اتصال PPTP:

يمكن ترك اسم اتصال VPN كمعيار ، أو يمكنك تحديد ما يناسبك ومفهومًا - فهذه مسألة ذوق. أدخل في حقل "البوابة" عنوان IP الخارجي للخادم الذي نتصل به (يتم تحديده عند الإعداد في خيار "الاستماع") ، أسفل الاسم وكلمة المرور. على اليمين ، في حقل "كلمة المرور" ، يجب أولاً تحديد الخيار "حفظ كلمة المرور لهذا المستخدم"):

بعد ذلك ، أغلق النوافذ واتصل بالخادم. إذا كان الخادم خارج شبكتك المحلية ، فأنت بحاجة إلى الوصول إلى الإنترنت.

هذا يكمل تنظيم الشبكة الافتراضية ، لكنه سيؤدي فقط إلى توصيل أجهزة الكمبيوتر بشبكة محلية. للوصول إلى الإنترنت من خلال خادم الشبكة ، تحتاج إلى إجراء إعداد آخر.

إعداد الوصول إلى الإنترنت عبر VPN

على خادم vpn ، أدخل الأوامر التالية:

Iptables -t nat -A POSTROUTING -o eth0 -s 10.10.10.1/24 -j MASQUERADE iptables -A FORWARD -s 10.10.10.1/24 -j ACCEPT iptables -A FORWARD -d 10.10.10.1/24 -j قبول

حيث 10.10.10.1/24 هو عنوان الخادم المحلي وقناع الشبكة.

بعد ذلك ، نحفظ التغييرات حتى تعمل حتى بعد إعادة تشغيل الخادم:

Iptables- حفظ

وقم بتطبيق كل التغييرات:

تطبيق Iptables

بعد ذلك ، سيكون لديك وصول إلى الإنترنت. إذا ذهبت إلى أي موقع يعرض عنوان IP الخاص بك ، فسترى عنوان الخادم الخارجي ، وليس عنوانك (إذا لم يتطابق).

أذكرك أنك وحدك المسؤول عن عواقب أفعالك.

التكوين مع مدير الشبكة "أ

مهما كان الأمر ، ولكن لا تزال تصف إعداد vpn باستخدام مدير الشبكة "أ. هذا الإعداد مناسب تمامًا لأولئك الذين يستخدمون الحصول التلقائي على عنوان IP باستخدام DHCP في اتصالهم بالشبكة.

1. قم بتثبيت الحزمتين اللتين نحتاجهما:
# apt-get install pptp-linux network-manager-pptp
نظرًا لأن هذه الحزم ليست على قرص ubuntu افتراضيًا ، وغالبًا ما يجب تكوين vpn على جهاز لم يعد به اتصال إنترنت آخر ، فإنني أنصحك بتخزين هذه الحزم من المستودع الرسمي مسبقًا. للقيام بذلك ، انتقل إلى موقعpack.ubuntu.com/ ، وابحث عن هاتين الحزمتين هناك ، وقم بتنزيلهما ثم قم بتثبيتهما على الجهاز الذي نحتاجه.
2. إذا لم يظهر عنصر اتصالات VPN في برنامج Network Manager الصغير أو لم يتم فتحه ، فأنت بحاجة إلى إعادة تسجيل الدخول أو إعادة التشغيل بشكل أفضل.
3. اضغط على زر الفأرة الأيسر (الزر الأيمن يعرض قائمة أخرى) على أيقونة مدير الشبكة وفي القائمة المنسدلة حدد "اتصالات VPN" - "تكوين VPN". أضف اتصالًا جديدًا واضبط جميع الخيارات الضرورية لهذا الاتصال ...
4. بعد ذلك ، يجب أن يظهر اتصالك في قائمة "اتصالات VPN" ، إذا لم يظهر فجأة - إعادة تسجيل الدخول أو إعادة التشغيل (حسنًا ، ما الذي يمكنني فعله ، طالما أن مدير الشبكة هذا لا يزال خامًا).
5. يمكن للجميع الآن الاتصال باتصال VPN الذي أنشأته (وكذلك قطع الاتصال عن طريق تحديد عنصر القائمة في Network Manager "هـ).

# apt-get install pptp-linux

كما وصفت أعلاه في قسم التثبيت باستخدام مدير الشبكة "a ، غالبًا ما يحتاج vpn إلى التهيئة على جهاز لم يعد به اتصال إنترنت آخر ، لذلك أنصحك بتخزين هذه الحزمة مسبقًا من حزم المستودع الرسمية .ubuntu.com /.

2. قم بتحرير ملف options.pptp:
#nano /etc/ppp/options.pptp


قفل nobsdcomp nodeflate استمرار

لن أصف كل من المعلمات ، سأصف فقط القليل منها:
استمر - تحاول هذه المعلمة إعادة فتح الاتصال عند إغلاقه ؛
nodeflate - لا تستخدم ضغط التفريغ (على الرغم من أنهم يقولون أنه يعمل بشكل أسرع معه ، لا أعرف - لم أختبره).
أيضًا ، إذا كان اتصالك يستخدم التشفير ، فقم بإضافة أحد الأسطر ، اعتمادًا على نوع التشفير - يتطلب-mschap-v2 ، يتطلب-mppe-40 ، يتطلب-mppe-128 ، يتطلب-mppe.

3. قم بإنشاء ملف اتصال / etc / ppp / peers / vpn (يمكنك استبدال اسم vpn بأي اسم آخر ، ولكن إذا قمت باستبداله ، فلا تنس تغييره أكثر في هذه المقالة)

#nano / etc / ppp / peers / vpn

نقوم بإدخال الأسطر التالية هناك:
maxfail 0 lcp-echo-الفاصل 60 lcp-echo-failure 4 defaultroute pty "pptp vpn.ava.net.ua --nolaunchpppd" name sukochev remotename PPTP + chap file /etc/ppp/options.pptp ipparam vpn

انتباه!!!تأكد من استبدال الخيارات التالية بخياراتك:
بدلاً من vpn.ava.net.ua ، أدخل عنوان خادم vpn (يمكنك استخدام عنوان IP الخاص بالخادم). بدلاً من sukochev ، أدخل معلومات تسجيل الدخول الخاصة بك.
سأصف بعض المعلمات:
maxfail 0 - حاول دائمًا الاتصال إذا لم يكن هناك اتصال ؛
فاصل صدى lcp - الفاصل الزمني الذي يتم بعده استطلاع الجانب البعيد ؛
lcp-echo-failure - عدد الطلبات التي لم يتم الرد عليها من الجانب البعيد ، وبعد ذلك يعتبرنا النظام معطلين ؛
defaultroute - تعيين المسار الافتراضي ؛
+ الفصل - نوع المصادقة. بجانب + الفصل ، يمكن استخدام نوع + pap.
ملف - اقرأ الإعدادات الإضافية من الملف المحدد.
يمكنك أيضًا إضافة المعلمات التالية إذا لزم الأمر:
انكماش 15،15 - استخدم ضغط الانكماش (لا ينبغي أن يكون هناك معلمة nodeflate في ملف options.pptp) ؛
mtu - الحجم الأقصى للحزمة المرسلة (عادةً ما يتم تغيير هذه المعلمة عندما يكون الاتصال غالبًا غير متصل أو لا تفتح بعض المواقع) ؛
mru هو الحجم الأقصى للحزمة المستلمة.

4. قم بتحرير الملف / etc / ppp / chap-secrets (إذا تم استخدام نوع مصادقة PAP ، فحينئذٍ / etc / ppp / pap-secrets ، على التوالي)

#nano / etc / ppp / chap-secrets

نقوم بإدخال سطر هناك ، مثل:

كلمة مرور Sukochev PPTP *

انتباه!!! استبدل sukochev باسم المستخدم وكلمة المرور بكلمة المرور الخاصة بك للاتصال.
5. إذا لزم الأمر ، قم بإضافة المسارات الضرورية إلى ملف / etc / network / interfaces. على سبيل المثال ، يتم تسجيل مساراتي بحيث يمكنني استخدام الشبكة المحلية عند تشغيل اتصال vpn. فيما يلي مثال على مساراتي (تلك التي تبدأ بالمسار العلوي) ، ستختلف بشكل طبيعي بالنسبة لك:

Auto eth1 iface eth1 inet dhcp up route add -net 10.1.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1 up route add -net 10.3.0.0 netmask 255.255.0.0 gw 10.1.45.1 dev eth1

لا تنس إعادة تشغيل اتصالات الشبكة بعد تغيير ملف / etc / network / interfaces:

# / etc / init.d / إعادة تشغيل الشبكات

6. يمكنك الآن تمكين وتعطيل اتصال VPN باستخدام الأوامر التالية:
تحول على

اغلق

اتصال VPN تلقائي عند بدء تشغيل النظام

للقيام بذلك ، قم بتحرير الملف / etc / network / interfaces
#nano / etc / network / interfaces

وأدخل الأسطر التالية في نهاية الملف:
auto ppp0 iface ppp0 inet ppp مزود vpn pre-up ip link set eth1 up route del default up route add default dev ppp0

حيث eth1 هي واجهة جهاز الشبكة الذي يتم من خلاله توصيل اتصال vpn ، و vpn هو اسم اتصال vpn الذي قمت بإنشائه في المجلد / etc / ppp / peers /.

هل ترغب في الحصول على اتصال آمن ومضمون بالإنترنت من هاتفك الذكي أو الكمبيوتر المحمول أثناء الاتصال بشبكة غير آمنة عبر شبكة WiFi في فندق أو مقهى؟ تتيح لك الشبكة الافتراضية الخاصة (VPN) استخدام شبكات غير آمنة كما لو كنت على شبكة خاصة. تمر كل حركة المرور الخاصة بك في هذه الحالة عبر خادم VPN.

بالاقتران مع استخدام اتصال HTTPS ، ستسمح لك الإعدادات الموضحة أدناه بتأمين معلوماتك الخاصة ، على سبيل المثال ، تسجيلات الدخول وكلمات المرور ، بالإضافة إلى مشترياتك. علاوة على ذلك ، يمكنك تجاوز القيود والرقابة الإقليمية ، وكذلك إخفاء موقعك وحركة مرور HTTP غير المشفرة من شبكة غير آمنة.

يمكنك نقل ملف تعريف من جهاز الكمبيوتر الخاص بك إلى هاتفك عن طريق توصيل جهاز Android بجهاز الكمبيوتر الخاص بك عبر USB ونسخ الملف. يمكنك أيضًا نقل ملف الملف الشخصي باستخدام بطاقة SD عن طريق نسخ ملف التعريف إلى البطاقة وإدخال البطاقة في جهاز Android الخاص بك.

قم بتشغيل تطبيق OpenVPN وانقر فوق القائمة لاستيراد ملف التعريف.

مجمع

اضغط على الزر لتأسيس اتصال. الاتصال... سيتم سؤالك عما إذا كنت تثق في تطبيق OpenVPN. إجابة نعملتأسيس اتصال. لإيقاف الاتصال ، انتقل إلى تطبيق OpenVPN واختر قطع الاتصال.

الخطوة 13. اختبار اتصال VPN

بعد تثبيت كل شيء وتهيئته ، دعنا نتأكد من أن كل شيء يعمل بشكل صحيح. بدون إنشاء اتصال VPN ، افتح متصفحًا وانتقل إلى DNSLeakTest.

سيعيد هذا الموقع عنوان IP الذي عينه لك موفر خدمة الإنترنت. للتحقق من أي خوادم DNS قيد الاستخدام ، انقر فوق اختبار موسع.

الآن قم بإنشاء اتصال باستخدام عميل VPN الخاص بك وقم بتحديث الصفحة في متصفحك. يجب أن يكون عنوان IP المعطى لك مختلفًا تمامًا. أنت الآن تستخدم عنوان IP الجديد هذا للجميع على الإنترنت. انقر فوق اختبار موسعمرة أخرى للتحقق من إعدادات DNS الخاصة بك وتأكد من أنك تستخدم الآن خادم DNS الخاص بشبكة VPN.

الخطوة 14. إبطال شهادات العميل

من وقت لآخر ، قد تحتاج إلى إبطال شهادة العميل لمنع الوصول إلى خادم VPN &

للقيام بذلك ، انتقل إلى دليل المرجع المصدق وأدخل الأوامر:

  • القرص المضغوط ~ / openvpn-ca
  • فارز المصدر
  • ./revoke-full client3

سينتهي إخراج هذا الأمر بالخطأ 23. هذا أمر طبيعي. نتيجة لذلك ، سيتم إنشاء الملف crl.pem في دليل المفاتيح بالمعلومات اللازمة لإلغاء الشهادة.

انقل هذا الملف إلى الدليل / etc / openvpn:

  • sudo cp ~ / openvpn-ca / keys / crl.pem / etc / openvpn
  • sudo nano /etc/openvpn/server.conf

أضف crl-check في نهاية الملف. سيتحقق خادم OpenVPN من قائمة الشهادات الباطلة (CRL) في كل مرة يتصل فيها شخص ما بالخادم.

/etc/openvpn/server.conf

Crl- تحقق من crl.pem

أحفظ وأغلق الملف.

أعد تشغيل OpenVPN لإكمال عملية إبطال الشهادة:

الآن لن يتمكن العميل من إنشاء اتصال بخادم OpenVPN باستخدام الشهادة القديمة.

لإلغاء الشهادات الإضافية ، اتبع الخطوات التالية:

    قم بإنشاء قائمة إبطال جديدة باستخدام الأمر source vars في الدليل ~ / openvpn-ca وإصدار أمر الإبطال الكامل باسم العميل.

    انسخ CRL الجديد إلى / etc / openvpn ، واستبدل CRL القديم.

    أعد تشغيل خدمة OpenVPN.

يمكن استخدام هذا الإجراء لإبطال أي شهادات قمت بإنشائها مسبقًا.

استنتاج

تهانينا! يمكنك الآن الوصول إلى الإنترنت بأمان ، وكل حركة المرور الخاصة بك محمية من التنصت بواسطة الرقباء والمتطفلين.

كرر الخطوات لتكوين عملاء إضافيين 6 و 11-13 لكل جهاز جديد. لإبطال وصول عميل معين ، استخدم الخطوة 14 .

تحتاج أحيانًا إلى الوصول عن بُعد إلى شبكة المؤسسة ، أو إنشاء نفق بين الخوادم أو توفير الوصول إلى الإنترنت لجيران جيد تم فصله عن الشبكة بسبب دين ، وربما يكون قادرًا فقط على الوصول إلى شبكتك من أي مكان في العالم حيث يوجد الإنترنت.

لهذه الأغراض ، يمكنك استخدام الشبكات الخاصة الافتراضية (الشبكة الافتراضية الخاصة - VPN). في حالتنا ، سيكون هذا هو البروتوكول الأكثر شيوعًا في بلدان رابطة الدول المستقلة ، وهو PPTP (بروتوكول الاتصال النفقي من نقطة إلى نقطة). يستخدمه العديد من موفري الإنترنت عبر الكبل لتوفير خدمات الوصول إلى الإنترنت.

إن إعداد الخادم وتشغيله على Linux Ubuntu Server LTS ليس بهذه الصعوبة. للقيام بذلك ، نحتاج إلى الوصول إلى الإنترنت وعنوان IP حقيقي (إذا احتجنا إلى الاتصال من الإنترنت).

نذهب إلى الخادم باستخدام حساب الجذر ونقوم بتثبيت الحزم اللازمة باستخدام الأمر apt-get install pptpd ، كما سيتم عرضنا أيضًا لتثبيت حزمة bcrelay ، فهي تتيح لك تكرار حزم البث المستلمة على الواجهة الواردة إلى الظاهري (عميل PPP الأنفاق).

اضغط على Enter وسيتم تثبيت خادمنا. لنبدأ بالتكوين. لنفتح الملف nano /etс/pptpd.conf وفي الأسفل سنرى الأسطر التالية

#localip 192.168.0.1
#remoteip 192.168.0.234-238،192.168.0.245
# أو
#localip 192.168.0.234-238،192.168.0.245
#remoteip 192.168.1.234-238،192.168.1.245

هذه هي إعدادات عنوان IP للعميل. دعنا نزيل التعليق عن أول سطرين (أزل الرمز #) ونصححهما قليلاً.

يعني الخط المحلي 192.168.0.1 أن خادم VPN الخاص بنا سيحتوي على IP 192.168.0.1 ، ويمكنك تحديد عنوان IP الخاص بنا في إحدى الشبكات المتصلة مباشرة. على سبيل المثال ، في شبكتي المنزلية ، يحتوي الخادم على عنوان IP - 172.30.2.1 لكي لا يتم تحميل الخادم دون داع ، استخدمته.

السطر الثاني - remoteip 192.168.0.234-238،192.168.0.245 يحدد نطاق عناوين IP التي سيتم تعيينها للعملاء. كما ترى من هذه السطور ، يمكن أن يكون عنوان الشبكة أي شيء (في المجموعة الثانية من الخطوط). للراحة ، سنختاره من نفس النطاق مثل IP لخادمنا.

أستخدم منطق إصدار IP التالي في المنزل: الأول - جهاز التوجيه ، 2-19 - أجهزة الكمبيوتر ، 20-49 - VPN ثابت (عند الاتصال ، يتم إصدار نفس العنوان) ، 50-100 - عملاء VPN ، 101-199 - Wi- عملاء Fi ، 200-254 - لأجهزة مختلفة (على سبيل المثال ، موجه IP ، تلفزيون ، إلخ). دعونا نحدد نطاق التحكم عن بعد 172.30.2.50-100 ونحفظ التكوين.

دعنا ننتقل إلى الدليل cd / etс / ppp / ، حيث يتم تخزين جميع ملفات التكوين pptpd (الخادم) و pppd (العميل).

دعنا نعيد تسمية ملف خيارات pptpd باستخدام الأمر mv pptpd-options pptpd-options.bak وإنشائه باستخدام خيارات nano pptpd الجديدة. ويتم ذلك لتسهيل إدراج عدة أسطر في ملف جديد بدلاً من البحث عن خيارات بين عشرات السطور مع التعليقات. دعنا نلصق المحتوى التالي في هذا الملف الجديد:

اسم pptpd
يرفض باب
الفصل القمامة
رفض- mschap
تتطلب- mschap-v2
# تتطلب- mppe-128
ms-dns 172.30.2.1
عقدة الطريق
قفل
nobsdcomp
المصادقة
logfile /var/log/pptpd.log

ماذا يعني كل هذا؟ دعنا نذهب بالترتيب:

  • استخدم اسم pptpd للعثور على عمليات تسجيل دخول chap-secrets
  • باستخدام هذا الخيار ، لن يوافق pptpd على المصادقة باستخدام بروتوكول refuse-pap ، و refuse-chap ، و refuse-mschap
  • اطلب من النظير المصادقة باستخدام MS-CHAPv2
  • يتطلب استخدام MPPE مع تشفير 128 بت يتطلب mppe-128 أي تشفير كل حركة المرور. يؤدي هذا إلى زيادة الحمل على الخادم ولا تدعمه جميع الأجهزة "الضعيفة" (أجهزة توجيه Wi-Fi ، وما إلى ذلك).
  • أقترح استخدام خادم DNS مع IP 172.30.2.1
  • nodefaultroute - لا تقم بتعيين البوابة الافتراضية من الخادم إلى العميل ، وإلا فسيتم إرسال جميع حركات المرور إلى الإنترنت من خلال العميل المتصل ، وسيتم أيضًا قطع الاتصال بالإنترنت بسبب فقدان المسار للمزود.
  • قفل - جلسات الحظر ، أي من تسجيل دخول واحد يمكن أن يكون هناك اتصال واحد فقط
  • nobsdcomp - لا تضغط على حركة المرور. عند التمكين ، يزيد الحمل على خادمنا
  • المصادقة - تتطلب إذنًا (تسجيل الدخول وكلمة المرور)
  • logfile /var/log/pptpd.log - كتابة سجلات العمليات إلى هذا الملف.

احفظ وأغلق ملف التكوين هذا.

نحتاج الآن إلى إضافة المستخدمين الذين سيتصلون بخادمنا. لنفتح ملف nano chap-secrets (يُستخدم لتخزين حسابات PPP).

للتشغيل الصحيح ، يجب مراعاة التنسيق التالي: يجب فصل الأعمدة بمسافة واحدة على الأقل أو علامة تبويب (علامة تبويب) ، ولا يُسمح بالمسافات في الأسماء (وإلا يتم اعتبار المسافة في العمود التالي) ، يجب أن يبدأ تسجيل الدخول بحرف. على سبيل المثال:

العمود الأول هو اسم المستخدم ، والثاني هو اسم الخدمة. في حالتنا ، هذا هو pptpd. التالي هو كلمة مرور المستخدم ، وآخرها هو عنوان IP الذي سيتم إصداره. علاوة على ذلك ، إذا كان هناك * ، فسيتم إصدار عنوان IP تلقائيًا من النطاق المحدد مسبقًا. يمكنك أيضًا تحديد عنوان IP قد يكون خارج النطاق.

قبل استخدام الخادم ، تحتاج إلى إعادة تشغيله. للقيام بذلك ، قم بتنفيذ /etс/init.d/pptpd إعادة التشغيل إذا لم تكن هناك أخطاء في التكوين ، فسيتم بدء تشغيل الخادم.

ريال عماني [بريد إلكتروني محمي]: إعادة تشغيل / etc / ppp # /etc/init.d/pptpd
إعادة تشغيل PPTP:
إيقاف PPTP: pptpd.
بدء برنامج PPTP الخفي: pptpd.

إذا كنت تستخدم) تحتاج إلى إضافة الأسطر التالية إليه:

# VPN - PPTPD
iptables -A INPUT -p tcp -m tcp --dport 1723 -j قبول
iptables -A INPUT -p gre -m state - ذات صلة بالحالة ، تأسست -j قبول

لتوفير الوصول إلى الإنترنت لعملاء VPN من خلال خادمنا ، تحتاج إلى إضافة القاعدة التالية إلى IPTables:

iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE

حيث eth1 هي الواجهة نحو الإنترنت.

للاختبار ، يمكنك إنشاء اتصال VPN تجريبي مع تشفير معطل (اختياري) واستخدام أي تسجيل دخول محدد للاتصال بالخادم.

تكرار أخطاء الاتصال

لإنشاء اتصال عميل PPTP من نظام التشغيل Windows XP ، اتبع الخطوات التالية: انقر فوق "ابدأ" - "لوحة التحكم" - "اتصالات الشبكة والإنترنت" - "اتصالات الشبكة".


انقر فوق "إنشاء اتصال جديد" - سيؤدي هذا إلى تشغيل "معالج الاتصال الجديد".







الآن ندخل اسم الاتصال. يمكنك كتابة أي شيء هنا ، سيكون مجرد اسم الاتصال ، على سبيل المثال سنكتب "PPTP" (حسب نوع الاتصال).



قد يظهر السؤال التالي "هل تريد استخدام اتصالات الإنترنت المهيأة؟" (إذا قمت بالفعل بتكوين اتصال PPPoE) ، فانقر فوق "عدم الاتصال" فيه.



إذا لم تظهر مثل هذه الرسالة ، فتابع القراءة.

سيُطلب منك الآن إدخال عنوان الخادم ، والإشارة إلى عنوان IP الخاص بخادمك أو اسمه.




في النافذة الموضحة في الصورة أعلاه ، حدد "خصائص". ستظهر نافذة نختار فيها علامة التبويب "الأمان". نجد فيه العنصر "تشفير البيانات مطلوب" وقم بإلغاء تحديد المربع. خلاف ذلك ، لن نتمكن من الاتصال ، ستظهر الأخطاء 741 أو 742 - "نوع التشفير المطلوب غير مدعوم من قبل الخادم."


بعد ذلك ، انقر فوق الزر "موافق" ، ثم عد إلى النافذة السابقة ، وأدخل اسم المستخدم وكلمة المرور واتصل بخادمنا البعيد عبر قناة VPN آمنة!

بعد النظر في القضايا النظرية في الأجزاء السابقة ، دعنا ننتقل إلى التنفيذ العملي. سننظر اليوم في إنشاء خادم PPTP VPN على نظام خادم Ubuntu. هذه المادة مخصصة للقراء ذوي المهارات في Linux ، لذلك لن تشتت انتباهنا الأشياء التي وصفناها في مقالات أخرى ، مثل تكوين الشبكة ، وما إلى ذلك. إذا كنت تواجه صعوبات - قم أولاً بدراسة موادنا الأخرى.

سنبدأ تعارفنا العملي مع VPN مع PPTP ، وهو أسهل تطبيق في التطبيق. ومع ذلك ، ضع في اعتبارك أن هذا بروتوكول ضعيف الأمان ولا ينبغي استخدامه للوصول إلى البيانات الهامة.

ضع في اعتبارك الدائرة التي أنشأناها في مختبر الاختبار الخاص بنا للحصول على معرفة عملية بهذه التكنولوجيا:

لدينا شبكة محلية 10.0.0.0/24 مع خادم طرفي 10.0.0.2 و 10.0.0.1 ، والذي سيعمل كخادم VPN ، بالنسبة لشبكة VPN ، قمنا بحجز شبكة 10.0.1.0/24. تحتوي واجهة الخادم الخارجي على عنوان IP مخصص شرطي X.X.X. هدفنا هو تزويد العملاء البعيدين بإمكانية الوصول إلى الخادم الطرفي والموارد المشتركة عليه.

إعداد خادم PPTP

قم بتثبيت حزمة pptpd التي تنفذ وظيفة PPTP VPN:

سودو apt-get install pptpd

الآن دعنا نفتح الملف /etc/pptpd.confوقم بتعيين الإعدادات الأساسية لخادم VPN. دعنا ننتقل إلى نهاية الملف ، حيث سنشير إلى عنوان الخادم في شبكة VPN:

لوكاليب 10.0.1.1

ونطاق العناوين المطلوب إصدارها للعملاء:

ريموتيب 10.0.1.200-250

يجب تخصيص العناوين على الأقل لأكبر عدد ممكن من الاتصالات المتزامنة ، ويفضل أن يكون ذلك بهامش صغير ، لأن زيادتها دون إعادة تشغيل pptpd أمر مستحيل. نجد أيضًا السطر ونزيل التعليق عنه:

Bcrelay eth1

سيسمح ذلك لعملاء VPN ببث الحزم على الشبكة الداخلية.

يمكنك أيضًا استخدام الخيارات استمعو سرعة، الأول يسمح لك بتحديد عنوان IP للواجهة المحلية للاستماع إلى اتصالات PPTP الواردة ، والثاني لتحديد سرعة اتصالات VPN في bps. على سبيل المثال ، لنسمح للخادم بقبول اتصالات PPTP فقط من الواجهة الخارجية:

استمع X.X.X.X

توجد إعدادات أكثر دقة في الملف / etc / ppp / pptpd-options... تتوافق الإعدادات الافتراضية تمامًا مع متطلباتنا ، لكننا سنراجع بعضها بإيجاز حتى يكون لديك فكرة عن الغرض منها.

الجزء # التشفيرمسؤول عن تشفير البيانات والمصادقة. لا تسمح هذه الخيارات باستخدام بروتوكولات PAP و CHAP و MS-CHAP القديمة وغير الآمنة:

يرفض باب
الفصل القمامة
رفض- mschap

تتطلب- mschap-v2
تتطلب- mppe-128

القسم التالي # الشبكة والتوجيه، هنا يجب الانتباه إلى الخيار مللي نظام أسماء النطاقاتالذي يسمح باستخدام خادم DNS على الشبكة الداخلية. يمكن أن يكون هذا مفيدًا عند وجود بنية مجال للشبكة أو وجود خادم DNS فيها يحتوي على أسماء جميع أجهزة الكمبيوتر في الشبكة ، مما يجعل من الممكن الرجوع إلى أجهزة الكمبيوتر بأسمائها ، وليس فقط عن طريق IP. في حالتنا ، هذا الخيار عديم الفائدة ويتم التعليق عليه. وبالمثل ، يمكنك تعيين عنوان خادم WINS مع الخيار ms- يفوز.

هنا هو الخيار بروكسيارب، بما في ذلك ، كما قد يتبادر إلى الذهن من الاسم ، دعم الخادم وكيل ARP.

في القسم #متنوعيحتوي على خيار قفلمما يقيد العميل باتصال واحد.

إيفانوف * 123 *
بتروف * 456 10.0.1.201

يسمح الإدخال الأول للمستخدم ivanov بالاتصال بالخادم باستخدام كلمة المرور 123 ويخصص له عنوان IP تعسفيًا ، بينما يُنشئ الثاني المستخدم petrov بكلمة المرور 456 ، والذي سيتم تعيين العنوان الدائم 10.0.1.201 له عند الاتصال.

اعادة البدء pptpd:

أعد تشغيل Sudo /etc/init.d/pptpd

ملاحظة مهمة! لو pptpdلا تريد إعادة التشغيل ، والتجميد في البداية ، ولكن في / var / log / syslogمضيفا الخط تجاهل سطر ملف التكوين الطويلتأكد من الإضافة إلى نهاية الملف /etc/pptpd.confالخط مقطوع.

خادمنا جاهز للذهاب.

تكوين أجهزة الكمبيوتر العميلة

بشكل عام ، يكفي تكوين اتصال VPN بالخيارات الافتراضية. ومع ذلك ، ننصحك بتحديد نوع الاتصال بشكل صريح وتعطيل بروتوكولات التشفير غير الضرورية.

علاوة على ذلك ، بناءً على بنية الشبكة ، يجب عليك تحديد المسارات الثابتة والعبّارة الافتراضية. تمت مناقشة هذه الأسئلة بالتفصيل في الأجزاء السابقة.

نقوم بتأسيس اتصال VPN ونحاول اختبار اتصال أي جهاز كمبيوتر في الشبكة المحلية ، وتمكنا من الوصول إلى الخادم الطرفي دون أي صعوبة:

الآن من أجل إضافة واحدة أكثر أهمية. في معظم الحالات ، لن يكون الوصول إلى أجهزة الكمبيوتر على الشبكة المحلية ممكنًا إلا من خلال عناوين IP ، أي المسار \\ 10.0.0.2 سيعمل ، لكن \\ SERVER لن يعمل. قد يكون هذا غير مريح وغير عادي للمستخدمين. هنالك العديد من الطرق لحل هذه المشكلة.

إذا كان للشبكة المحلية بنية مجال ، يكفي تحديد خادم DNS لاتصال VPN بخادم DNS لوحدة تحكم المجال. استخدم الخيار مللي نظام أسماء النطاقاتالخامس / etc / ppp / pptpd-optionsسيتلقى العميل بيانات الخادم والإعداد تلقائيًا.

إذا لم يكن هناك خادم DNS في الشبكة المحلية ، فيمكنك إنشاء واستخدام خادم WINS ، ويمكن أيضًا نقل المعلومات المتعلقة به تلقائيًا إلى العملاء باستخدام الخيار ms- يفوز... وأخيرًا ، إذا كان هناك عدد قليل من العملاء البعيدين ، فاستخدم الملفات الموجودة على أجهزة الكمبيوتر العميلة المضيفين(C: \ Windows \ System32 \ drivers \ etc \ hosts) ، حيث يجب إضافة أسطر مثل.