Anonim

لماذا استخدام VPN للوصول إلى منزلك

روابط سريعة

  • لماذا استخدام VPN للوصول إلى منزلك
  • إعداد بي
    • تثبيت Raspbian
  • إعداد OpenVPN
    • سلطة الشهادة
    • اصنع بعض المفاتيح
    • تكوين الخادم
    • بدء الخادم
  • إعداد العميل
    • تكوين العميل
  • ميناء الشحن
  • الاتصال بالعميل
  • ختام الأفكار

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

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

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

إعداد بي

قبل أن تتمكن من البدء في إعداد VPN ، ستحتاج إلى إعداد Raspberry Pi. من الأفضل إعداد Pi مع حقيبة وبطاقة ذاكرة جيدة الحجم ، وينبغي أن يكون 16 جيجابايت أكثر من كافية. إذا كان ذلك ممكناً ، قم بتوصيل Pi الخاص بك إلى جهاز التوجيه الخاص بك باستخدام كابل Ethernet. سوف يقلل من أي تأخير الشبكة.

تثبيت Raspbian

أفضل نظام تشغيل يمكن استخدامه على Pi هو Raspbian. إنه الخيار الافتراضي الذي وضعته مؤسسة Raspberry Pi ، وهو يستند إلى دبيان ، وهو أحد إصدارات Linux الأكثر أمانًا واستقرارًا.

انتقل إلى صفحة تنزيل Rasbian ، وانتزاع أحدث إصدار. يمكنك استخدام الإصدار "Lite" هنا ، لأنك لا تحتاج فعليًا إلى سطح مكتب رسومي.

أثناء التنزيل ، احصل على أحدث إصدار من Etcher لنظام التشغيل الخاص بك. بعد اكتمال التنزيل ، قم باستخراج صورة Raspbian. ثم ، افتح Etcher. حدد صورة Raspbian التي استخرجت منها الصورة. حدد بطاقة SD الخاصة بك (أدخلها أولاً). أخيرًا ، اكتب الصورة على البطاقة.

اترك بطاقة SD في جهاز الكمبيوتر الخاص بك عند الانتهاء. افتح مدير الملفات وتصفح للوصول إلى البطاقة. يجب أن تشاهد بضعة أقسام مختلفة. ابحث عن قسم "التمهيد". انها واحدة مع ملف "kernel.img" فيه. قم بإنشاء ملف نصي فارغ على قسم "التمهيد" ، وقم بتسميته "ssh" بدون امتداد الملف.

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

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

سواء كنت تستخدم نظام التشغيل Windows أو Linux أو Mac ، افتح OpenSSH. الاتصال التوت بي مع SSH.

$ ssh

من الواضح ، استخدم عنوان IP الفعلي لـ Pi. اسم المستخدم هو دائما بي ، وكلمة المرور هي التوت.

إعداد OpenVPN

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

تحديث $ sudo apt $ ترقية sudo apt

بعد انتهاء التحديث ، يمكنك تثبيت OpenVPN والأداة المساعدة للشهادة التي تحتاجها.

sudo $ apt install openppn easy-rsa

سلطة الشهادة

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

أولاً ، قم بإنشاء دليل للشهادات الخاصة بك. الانتقال إلى هذا الدليل.

$ sudo make-cadir / etc / openvpn / certs $ cd / etc / openvpn / certs

انظر حولك لملفات تكوين OpenSSL. بعد ذلك ، قم بربط أحدث واحد بـ openssl.cnf.

$ ls | grep -i openssl $ sudo ln -s openssl-1.0.0.cnf openssl.cnf

في نفس المجلد "certs" يوجد ملف يسمى "vars". افتح هذا الملف باستخدام محرر النصوص. نانو هو الافتراضي ، ولكن لا تتردد في تثبيت Vim ، إذا كنت أكثر راحة معها.

ابحث عن المتغير KEY_SIZE أولاً. تم ضبطه على 2048 بشكل افتراضي. غيره إلى 4096.

تصدير KEY_SIZE = 4096

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

تصدير KEY_COUNTRY = "الولايات المتحدة" تصدير KEY_PROVINCE = "CA" export KEY_CITY = "SanFrancisco" export KEY_ORG = "Fort-Funston" export KEY_EMAIL = "" export KEY_OU = "MyOrganizationalUnit" export KEY_NAME = "HomeVPN"

عندما يكون لديك كل شيء ، احفظ واخرج.

تحتوي حزمة Easy-RSA التي قمت بتثبيتها من قبل على الكثير من البرامج النصية التي تساعد على إعداد كل ما تحتاجه. تحتاج فقط لتشغيلها. ابدأ بإضافة ملف "vars" كمصدر. سيؤدي ذلك إلى تحميل جميع المتغيرات التي قمت بتعيينها للتو.

مصدر sudo $

بعد ذلك ، قم بتنظيف المفاتيح. ليس لديك أي ، لذلك لا تقلق بشأن الرسالة التي تخبرك أنه سيتم حذف مفاتيحك.

sudo $. / تنظيف - التثبيت

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

sudo $ ./build-ca

اصنع بعض المفاتيح

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

$ sudo ./build-key-server server

بعد ذلك ، قم ببناء Diffie-Hellman PEM. هذا ما يستخدمه OpenVPN لتأمين اتصالات العميل بالخادم.

$ sudo openssl dhparam 4096> /etc/openvpn/dh4096.pem

المفتاح الأخير الذي تحتاجه من الآن يسمى مفتاح HMAC. يستخدم OpenVPN هذا المفتاح للتوقيع على كل حزمة فردية من المعلومات التي يتم تبادلها بين العميل والخادم. يساعد على منع أنواع معينة من الهجمات على الاتصال.

$ sudo openvpn - genkey --secret /etc/openvpn/certs/keys/ta.key

تكوين الخادم

لديك المفاتيح. الجزء التالي في إعداد OpenVPN هو تكوين الخادم نفسه. لحسن الحظ ، لا يوجد كل ما عليك القيام به هنا. يوفر دبيان تكوينًا أساسيًا يمكنك استخدامه للبدء. لذا ، ابدأ بالحصول على ملف التكوين هذا.

$ sudo gunzip -c /usr/share/doc/openvpn/examples/sample-config-files/server.conf.gz> /etc/openvpn/server.conf

استخدم محرر النصوص مرة أخرى لفتح /etc/openvpn/server.conf. أول الأشياء التي تحتاج إلى البحث عنها هي ملفات ca و cert والملفات الرئيسية. تحتاج إلى تعيينها لتتناسب مع المواقع الفعلية للملفات التي قمت بإنشائها ، والتي تكون جميعها في / etc / openvpn / certs / keys.

ca /etc/openvpn/certs/keys/ca.crt cert /etc/openvpn/certs/keys/server.crt key /etc/openvpn/certs/keys/server.key # يجب الحفاظ على هذا الملف سريًا

ابحث عن إعداد dh وقم بتغييره لمطابقة Diffie-Hellman .pem الذي قمت بإنشائه.

dh4096.pem

حدد المسار لمفتاح HMAC أيضًا.

tls-auth /etc/openvpn/certs/keys/ta.key 0

ابحث عن الشفرات وتأكد من مطابقتها للمثال أدناه.

تشفير AES-256-CBC

الخياران التاليان موجودان ، لكنهما علقتا عليه بـ ؛. قم بإزالة الفواصل المنقوطة أمام كل خيار لتمكينها.

دفع "إعادة توجيه بوابة def1 تجاوز- dhcp" دفع "dhcp- خيار DNS 208.67.222.222" دفع "dhcp- خيار DNS 208.67.220.220"

ابحث عن خيارات المستخدم والمجموعة. uncomment لهم ، وتغيير المستخدم إلى "openvpn".

مجموعة المستخدمين openvpn nogroup

أخيرًا ، هذان السطران الأخيران ليسا في التكوين الافتراضي. ستحتاج إلى إضافتها في نهاية الملف.

اضبط ملخص المصادقة لتحديد تشفير أقوى لمصادقة المستخدم.

# مصادقة هضم مصادقة SHA512

بعد ذلك ، قم بتقييد أجهزة cipers التي يمكن لـ OpenVPN استخدامها على أقوى. هذا يساعد في الحد من الهجمات المحتملة على الأصفار الضعيفة.

# حد الأصفار tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH-AES-256- CBC-SHA: TLS-DHE-RSA-WITH-كاميليا-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-كاميليا-128-CBC- SHA

هذا كل شيء للتكوين. احفظ الملف واخرج.

بدء الخادم

قبل أن تتمكن من بدء تشغيل الخادم ، تحتاج إلى جعل هذا المستخدم openvpn الذي حددته.

$ sudo adduser - النظام - شل / usr / sbin / nologin - no-create-home openvpn

إنه مستخدم خاص لتشغيل OpenVPN فقط ، ولن يفعل أي شيء آخر.

الآن ، ابدأ تشغيل الخادم.

$ sudo systemctl start openvpn $ sudo systemctl start

تحقق من أن كلاهما يعمل

$ sudo systemctl status openvpn * .service

إذا كان كل شيء يبدو جيدًا ، فقم بتمكينهم عند بدء التشغيل.

تمكين $ sudo systemctl openvpn تمكين $ sudo systemctl

إعداد العميل

أنت خادم الآن إعداد وتشغيل. بعد ذلك ، تحتاج إلى إعداد تكوين العميل الخاص بك. هذا هو التكوين الذي ستستخدمه لتوصيل أجهزتك بخادمك. ارجع إلى مجلد certs واستعد لإنشاء مفتاح (مفاتيح) العميل. يمكنك اختيار إنشاء مفاتيح منفصلة لكل عميل أو مفتاح واحد لجميع العملاء. للاستخدام المنزلي ، يجب أن يكون مفتاح واحد على ما يرام.

$ cd / etc / openvpn / certs $ sudo source ./vars $ sudo ./build-key client

تتشابه العملية تقريبًا مع الخادم ، لذا اتبع نفس الإجراء.

تكوين العميل

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

التغيير في دليل العميل. ثم ، فك حزمة التكوين.

$ cd / etc / openvpn / client $ sudo cp /usr/share/doc/openvpn/examples/sample-config-files/client.conf /etc/openvpn/client/client.ovpn

افتح الملف client.ovpn باستخدام محرر النصوص. ثم ، ابحث عن الخيار البعيد. على افتراض أنك لا تستخدم VPN بالفعل ، ابحث في Google عن "ما هو عنوان IP الخاص بي". خذ العنوان الذي تعرضه ، واضبط عنوان IP البعيد عليه. اترك رقم المنفذ.

بعيد 107.150.28.83 1194 # هذا IP المفارقة هي VPN

غيّر الإعدادات لتعكس تلك التي أنشأتها ، تمامًا كما فعلت مع الخادم.

كاليفورنيا ca.crt سيرت client.crt مفتاح client.key

ابحث عن خيارات المستخدم وقم بإلغاء التثبيت. لا بأس في إدارة العملاء كأحد.

المستخدم لا أحد مجموعة nogroup

قم بإلغاء تحديد خيار tls-auth لـ HMAC.

tls-auth ta.key 1

بعد ذلك ، ابحث عن خيار التشفير وتأكد من تطابقه مع الخادم.

تشفير AES-256-CBC

بعد ذلك ، فقط أضف قيود المصادقة والشفرات في أسفل الملف.

# مصادقة ملخص المصادقة SHA512 # قيود التشفير tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH -AES-256-CBC-SHA: TLS-DHE-RSA-WITH-كاميليا-256-CBC-SHA: TLS-DHE-RSA-WITH-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA -128-CBC-SHA

عندما يبدو كل شيء على ما يرام ، احفظ الملف والخروج. استخدم tar لحزم التكوين والتكوينات ، حتى تتمكن من إرسالها إلى العميل.

$ sudo tar cJf /etc/openvpn/clients/client.tar.xz -C / etc / openvpn / certs / keys ca.crt client.crt client.crt client.key ta.key -C /etc/openvpn/clients/client.ovpn

قم بنقل هذه الحزمة إلى العميل بغض النظر عن اختيارك. يعد كل من SFTP و FTP ومحرك USB خيارات رائعة.

ميناء الشحن

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

اتصل بواجهة الويب الخاصة بالموجه الخاص بك عن طريق كتابة عنوان IP الخاص به على متصفحك.

كل جهاز توجيه مختلف. حتى مع ذلك ، يجب أن يكون لديهم شكل ما من هذه الوظيفة. العثور عليه على جهاز التوجيه الخاص بك.

الإعداد هو نفسه أساسا على كل جهاز توجيه. أدخل منافذ البداية والنهاية. يجب أن يكونوا متماثلين مع بعضهم البعض وتلك التي قمت بتعيينها في التكوينات الخاصة بك. ثم ، بالنسبة لعنوان IP ، اضبط ذلك على عنوان IP الخاص بـ Raspberry Pi. حفظ التغييرات الخاصة بك.

الاتصال بالعميل

كل عميل مختلف ، لذلك لا يوجد حل عالمي. إذا كنت تستخدم نظام Windows ، فستحتاج إلى عميل Windows OpenVPN .

على Android ، يمكنك فتح tarball ، ونقل المفاتيح على هاتفك. بعد ذلك ، قم بتثبيت تطبيق OpenVPN. افتح التطبيق ، وقم بتوصيل المعلومات من ملف التكوين الخاص بك. ثم حدد المفاتيح الخاصة بك.

على نظام Linux ، تحتاج إلى تثبيت OpenVPN كثيرًا كما فعلت للخادم.

$ sudo apt install openvpn

بعد ذلك ، قم بالتغيير إلى / etc / openvpn ، وقم بفك حزمة tarball التي أرسلتها.

$ cd / etc / openvpn $ sudo tar xJf /path/to/client.tar.xz

إعادة تسمية ملف العميل.

sudo mv client.ovpn client.conf

لا تبدأ العميل بعد. سوف تفشل. تحتاج إلى تمكين إعادة توجيه المنفذ على جهاز التوجيه الخاص بك أولاً.

ختام الأفكار

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

تحويل pi التوت إلى شبكة فبن للوصول إلى الشبكة من أي مكان