מדוע להשתמש ב- VPN כדי לגשת לביתך
יש הרבה סיבות שתרצה לגשת לרשת הביתית מרחוק, והדרך הטובה ביותר לעשות זאת היא באמצעות שרת VPN. חלק מהנתבים למעשה מאפשרים לך להגדיר שרת VPN ישירות בתוך הנתב, אך בהרבה מקרים תצטרך להגדיר אחד בעצמך.
פטל פטל הוא דרך נהדרת להשיג זאת. הם לא דורשים הרבה אנרגיה כדי להפעיל, ויש להם מספיק כוח להפעלת שרת VPN. אתה יכול להגדיר אחד ליד הנתב שלך ובעצם לשכוח מזה.
כשיש לך גישה לרשת הביתית שלך מרחוק, אתה יכול להגיע לקבצים שלך מכל מקום. אתה יכול להריץ את המחשבים הביתיים שלך מרחוק. אתה יכול אפילו להשתמש בחיבור ה- VPN של הבית שלך מהכביש. התקנה כזו מאפשרת לטלפון, לטאבלט או למחשב הנייד שלך להתנהג בדיוק כמו שהיה בבית מכל מקום.
הגדר את ה- Pi
לפני שתוכל להתחיל בהגדרת ה- VPN, תצטרך להגדיר את ה- Raspberry Pi שלך. עדיף להגדיר את ה- Pi עם מארז וכרטיס זיכרון בגודל הגון, 16 ג'יגה צריך להספיק. אם אפשר, חבר את ה- Pi שלך לנתב באמצעות כבל אתרנט. זה ימזער עיכובים ברשת.
התקן את Raspbian
מערכת ההפעלה הטובה ביותר לשימוש ב- Pi שלך היא Raspbian. זוהי בחירת ברירת המחדל של קרן Raspberry Pi, והיא מבוססת על דביאן, אחת מגרסאות הלינוקס המאובטחות והיציבות שיש.
עבור אל דף ההורדות של רסבית ותפסו את הגרסה האחרונה. אתה יכול להשתמש בגרסת Lite כאן, מכיוון שאתה לא באמת זקוק לשולחן עבודה גרפי.
בזמן ההורדה, קבל את הגרסה האחרונה של חָרָט עבור מערכת ההפעלה שלך. לאחר השלמת ההורדה, חילץ את התמונה Raspbian. ואז, פתחו את Etcher. בחר את התמונה Raspbian ממנה חילצת אותה. בחר את כרטיס ה- SD שלך (הכנס אותו תחילה). לסיום, כתוב את התמונה לכרטיס.
כיצד למחוק את היסטוריית הצפייה ב - Netflix
השאר את כרטיס ה- SD במחשב שלך לאחר שיסיים. פתח מנהל קבצים ועיין בכרטיס. אתה אמור לראות כמה מחיצות שונות. חפש את מחיצת האתחול. זה זה עם קובץ kernel.img. צור קובץ טקסט ריק במחיצת האתחול, וקרא לו ssh ללא סיומת קובץ.
סוף סוף תוכל לחבר את ה- Pi שלך. ודא שאתה מחבר אותו אחרון. אינך זקוק למסך, מקלדת או עכבר. אתה הולך לגשת מרחוק ל- Raspberry Pi דרך הרשת שלך.
תן ל- Pi מספר דקות כדי להקים את עצמו. לאחר מכן, פתח דפדפן אינטרנט ונווט למסך הניהול של הנתב שלך. מצא את ה- Raspberry Pi וציין את כתובת ה- IP שלו.
בין אם אתה משתמש ב- Windows, Linux או Mac, פתח את OpenSSH. התחבר ל- Raspberry Pi עם SSH.
$ ssh [email protected]
ברור, השתמש בכתובת ה- IP האמיתית של ה- Pi. שם המשתמש הואתמיד פאיוהסיסמה היאפֶּטֶל.
הגדר את OpenVPN
OpenVPN לא בדיוק פשוט להגדרה כשרת. החדשות הטובות הן שאתה צריך לעשות זאת רק פעם אחת. לכן, לפני שאתם נכנסים פנימה, וודאו כי Raspbian מעודכן לחלוטין.
$ sudo apt update $ sudo apt upgrade
לאחר סיום העדכון, באפשרותך להתקין את OpenVPN ואת כלי האישור הדרוש לך.
$ sudo apt install openvpn easy-rsa
רשות האישורים
על מנת לאמת את המכשירים שלך כאשר הם מנסים להתחבר לשרת, עליך להגדיר רשות אישורים ליצירת מפתחות חתימה. מקשים אלה יבטיחו שרק המכשירים שלך יוכלו להתחבר לרשת הביתית שלך.
ראשית, צור ספריה עבור האישורים שלך. עבור לספרייה זו.
$ 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.
export KEY_SIZE=4096
החסימה העיקרית שעליה אתה צריך להתמודד קובעת מידע על סמכות האישור שלך. זה עוזר אם המידע הזה מדויק, אבל כל מה שאתה זוכר הוא בסדר.
export KEY_COUNTRY='US' export KEY_PROVINCE='CA' export KEY_CITY='SanFrancisco' export KEY_ORG='Fort-Funston' export KEY_EMAIL=' [email protected] ' export KEY_OU='MyOrganizationalUnit' export KEY_NAME='HomeVPN'
כשיש לך הכל שמור וצא.
אותה חבילת Easy-RSA שהתקנת בעבר מכילה הרבה סקריפטים המסייעים בהגדרת כל מה שאתה צריך. אתה רק צריך להריץ אותם. התחל בהוספת קובץ vars כמקור. זה יטען את כל המשתנים שהגדרת זה עתה.
$ sudo source ./vars
לאחר מכן, נקה את המקשים. אין לך, אז אל תדאג שההודעה תודיע לך שהמפתחות שלך יימחקו.
$ sudo ./clean-install
לבסוף, בנה את רשות האישורים שלך. כבר הגדרת את ברירות המחדל, כך שתוכל פשוט לקבל את ברירות המחדל שהוא מציג. זכור להגדיר סיסמה חזקה ולהשיב בחיוב לשתי השאלות האחרונות בעקבות הסיסמה.
$ sudo ./build-ca
הכין מפתחות
עברת את כל הבעיות האלה בהקמת רשות אישורים כדי שתוכל לחתום על מפתחות. עכשיו, הגיע הזמן להכין. התחל בבניית המפתח לשרת שלך.
$ sudo ./build-key-server server
לאחר מכן, בנה את ה- 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. הדברים הראשונים שאתה צריך למצוא הםזֶה,תעודה, ומַפְתֵחַקבצים. עליך להגדיר אותם כך שיתאימו למיקומים האמיתיים של הקבצים שיצרת, שכולם נמצאים/ 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 # This file should be kept secret
למצוא את הכְּלוֹמַרהגדרה, ושנה אותה כך שתתאים לדיפי-הלמן.pemשיצרת.
dh dh4096.pem
הגדר את הנתיב עבור מפתח ה- HMAC שלך.
tls-auth /etc/openvpn/certs/keys/ta.key 0
למצוא את הצוֹפֶןוודא שהוא תואם לדוגמא שלהלן.
cipher AES-256-CBC
שתי האפשרויות הבאות קיימות, אך הן מגיבות עם;. הסר את נקודה-פסיק לפני כל אפשרות כדי לאפשר אותם.
push 'redirect-gateway def1 bypass-dhcp' push 'dhcp-option DNS 208.67.222.222' push 'dhcp-option DNS 208.67.220.220'
חפש אתמִשׁתַמֵשׁוקְבוּצָהאפשרויות. בטל את התגובה עליהם, ושנה את ה-מִשׁתַמֵשׁלפתיחת VPN.
user openvpn group nogroup
לבסוף, שתי השורות האחרונות אינן בתצורת ברירת המחדל. יהיה עליך להוסיף אותם בסוף הקובץ.
הגדר את עיכול האימות כדי לציין הצפנה חזקה יותר לאימות משתמשים.
# Authentication Digest auth SHA512
לאחר מכן, הגבל את הצלצנים ש- OpenVPN יכול להשתמש בהם רק לחזקים יותר. זה עוזר להגביל התקפות אפשריות על צופנים חלשים.
# Limit Ciphers 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-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-128-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA
זה הכל לתצורה. שמור את הקובץ וצא.
הפעל את השרת
לפני שתוכל להפעיל את השרת, עליך לבצע זאתopenvpnמשתמש שציינת.
$ sudo adduser --system --shell /usr/sbin/nologin --no-create-home openvpn
זה משתמש מיוחד רק להפעלת OpenVPN, והוא לא יעשה שום דבר אחר.
כעת, הפעל את השרת.
$ sudo systemctl start openvpn $ sudo systemctl start [email protected]
בדוק ששניהם רצים
$ sudo systemctl status openvpn*.service
אם הכל נראה טוב, הפעל אותם בעת ההפעלה.
$ sudo systemctl enable openvpn $ sudo systemctl enable [email protected]
הגדרת לקוח
השרת שלך מוגדר ופועל כעת. לאחר מכן, עליך להגדיר את תצורת הלקוח שלך. זו התצורה שתשתמש בה כדי לחבר את המכשירים שלך לשרת שלך. לחזור למסויםהתיקיה והתכונן לבניית מפתח (ים) לקוח. אתה יכול לבחור לבנות מפתחות נפרדים לכל לקוח או מפתח אחד לכל הלקוחות. לשימוש ביתי, מפתח אחד צריך להיות בסדר.
$ 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, חיפוש בגוגל מה ה- IP שלי. קח את הכתובת שהיא מציגה והגדר אתמְרוּחָקכתובת IP אליו. השאר את מספר היציאה.
remote 107.150.28.83 1194 #That IP ironically is a VPN
שנה את הסרטים כך שישקף את אלה שיצרת, בדיוק כמו שעשית עם השרת.
ca ca.crt cert client.crt key client.key
מצא את אפשרויות המשתמש, ובטל את התגובה עליהן. זה בסדר להפעיל את הלקוחות כאף אחד.
user nobody group nogroup
ביטול תגובהtls-authאפשרות ל- HMAC.
tls-auth ta.key 1
לאחר מכן, חפש אתצוֹפֶןאפשרות וודא שהוא תואם לשרת.
cipher AES-256-CBC
לאחר מכן, פשוט הוסף את הגבלות עיכול האימות והצפנה בתחתית הקובץ.
# Authentication Digest auth SHA512 # Cipher Restrictions 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-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-128-CBC-SHA:TLS-DHE-RSA-WITH-CAMELLIA-128-CBC-SHA
כאשר הכל נראה תקין, שמור את הקובץ ויצא ממנו. להשתמשזֶפֶתכדי לארוז את התצורה ואת המסמכים, כך שתוכל לשלוח אותם ללקוח.
$ sudo tar cJf /etc/openvpn/clients/client.tar.xz -C /etc/openvpn/certs/keys ca.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 .
באנדרואיד, אתה יכול לפתוח את ה- tarball שלך ולהעביר את המפתחות לטלפון שלך. לאחר מכן, התקן את אפליקציית OpenVPN. פתח את האפליקציה וחבר את המידע מקובץ התצורה שלך. לאחר מכן בחר את המקשים שלך.
ב- Linux עליכם להתקין את OpenVPN הרבה כמו שעשיתם לשרת.
$ sudo apt install openvpn
ואז, שנה ל/ etc / openvpn, ולפרוק את כדור הזפת ששלחת אליו.
$ cd /etc/openvpn $ sudo tar xJf /path/to/client.tar.xz
שנה את שם קובץ הלקוח.
$ sudo mv client.ovpn client.conf
אל תפתח את הלקוח עדיין. זה ייכשל. עליך להפעיל תחילה העברת יציאות בנתב שלך.
סגירת מחשבות
כעת אמורה להיות לך הגדרת עבודה. הלקוח שלך יתחבר ישירות דרך הנתב שלך ל- Pi. משם, אתה יכול לשתף ולהתחבר דרך הרשת הווירטואלית שלך, כל עוד כל המכשירים מחוברים ל- VPN. אין מגבלה, כך שתמיד תוכל לחבר את כל המחשבים שלך ל- VPN של Pi.