فهرست مطالب:

Raspberry Pi VPN Gateway: 6 مرحله
Raspberry Pi VPN Gateway: 6 مرحله

تصویری: Raspberry Pi VPN Gateway: 6 مرحله

تصویری: Raspberry Pi VPN Gateway: 6 مرحله
تصویری: Raspberry Pi boots off an NVMe SSD, natively! 2024, جولای
Anonim
Raspberry Pi VPN Gateway
Raspberry Pi VPN Gateway

به روز رسانی 07-01-2018:

  • موارد به روز شده و تغییرات مورد نیاز برای نسخه فعلی Raspian مورد نیاز است.
  • همچنین یک راهنمای خاص برای NordVPN ایجاد کرد.

چندین کاربرد مختلف برای VPN وجود دارد. یا می خواهید از حریم خصوصی و داده های خصوصی خود در برابر چشم های کنجکاو محافظت کنید یا باید از کشور دیگری منبع بگیرید. تأمین منابع از کشور دیگری می تواند برای دستیابی به خدمات ارائه شده در کشور شما بسیار مفید باشد. امروزه تعدادی سرویس VPN وجود دارد و اکثر آنها نرم افزاری آسان برای استفاده در رایانه و برنامه هایی برای رایانه لوحی یا تلفن شما ارائه می دهند. اما اگر دستگاه های دیگری دارید که توسط نرم افزار پشتیبانی نمی شوند و می خواهید از VPN عبور کنید؟ سپس یک دروازه بسازید که از طریق VPN به شما دسترسی به اینترنت می دهد.

اگر به تنظیمات اصلی شبکه خود نگاه کنید ، یک "دروازه پیش فرض" دارید که برای هر آدرس IP که در زیر شبکه فعلی شما قرار ندارد (بسیار ساده شده) استفاده می شود. بنابراین اگر دروازه ای را تنظیم کنید که بتواند ترافیک اینترنت را از طریق اتصال VPN مستقر هدایت کند ، هر دستگاه دارای شبکه می تواند از تونل VPN استفاده کند.

مورد اصلی استفاده من در آپارتمان سانفرانسیسکو من یک تونل VPN به سوئد بومی من است تا بتوانم کانال های پخش سوئدی را در پخش کننده های رسانه ای و تلویزیون هوشمند خود پخش کنم. این مورد استفاده رایج برای اکثر افرادی است که به تونل VPN نیاز دارند. از آنجا که پخش کننده های رسانه ای من و تلویزیون های هوشمند من توسط نرم افزار VPN پشتیبانی نمی شوند ، من از Raspberry Pi یک دستگاه ساختم.

می توانید یکی را با قیمت کمتر از 40 دلار در آمازون انتخاب کنید. با این حال ، من توصیه می کنم که یک کیف و یک آداپتور برق مناسب نیز بخرید. برای این دستورالعمل شما نیاز دارید:

  • رزبری پای 2 یا 3
  • موردی به دلخواه شما
  • یک آداپتور برق مناسب
  • یک کابل شبکه

مرحله 1: انتخاب سرویس VPN خود

انتخاب سرویس VPN خود
انتخاب سرویس VPN خود

نکته مهم هنگام انتخاب سرویس VPN این است که نیازهای شما را برآورده می کند. برای این مورد استفاده ، من به یک سرویس VPN با نقطه خروج سوئدی نیاز داشتم ، این مهمترین چیز است زیرا من برای اطمینان از اینکه در سوئد هستم نیاز به خدمات سوئدی دارم. در طول سالها من از چندین تامین کننده مختلف استفاده کرده ام و در زیر مواردی که هنگام انتخاب تأمین کننده VPN برای مورد استفاده خاص مورد توجه قرار می گیرد ، آمده است:

تست رایگان

من یک دوره آزمایشی رایگان یا مقدار کمی از داده های آزمایش می خواهم تا نرم افزار یا برنامه را درک کنم. همچنین می خواهم قبل از پرداخت هزینه ، عملکرد و تجربه کلی را آزمایش کنم. همچنین خوب است قبل از شروع پرداخت ، بررسی کنم که ایده من کار خواهد کرد.

حریم خصوصی

اگر پیاده سازی مربوط به مسائل مربوط به حریم خصوصی است ، مهم است که سیاست حفظ حریم خصوصی بیان می کند. همچنین مهم است که این شرکت از چه کشوری فعالیت می کند و چه قوانینی از حریم خصوصی شما محافظت می کند. کاربران واقعاً مربوط به حریم خصوصی باید به خدماتی نگاه کنند که بیان می کند هیچ گونه گزارش ترافیکی ذخیره نمی شود و به عنوان مثال اجازه پرداخت ناشناس از طریق بیت کوین را می دهد.

ترافیک مجاز

ممکن است محدودیت هایی در نوع ترافیک مجاز به شما وجود داشته باشد. تامین کنندگان جدی تر معمولاً تردد همتا به همتا را مسدود می کنند. این نه تنها برای جلوگیری از مشکلات قانونی بلکه برای حفظ عملکرد برای همه کاربران است. بسیاری از تأمین کنندگان خوب وجود دارند که به همتایان اجازه می دهند خدمات خود را با کیفیت بالا ارائه دهند. اما اگر این کار اصلی شما نیست ، توصیه می کنم سرویسی را انتخاب کنید که اجازه همتا به همتا را نمی دهد.

سرپوش داده

هرگز از سرویسی استفاده نکنید که محدودیت داده ای را برای کاربران پولی خود قائل است. این فقط در بدترین زمان ممکن درست مانند داده های تلفن شما درست قبل از قسمت خنده دار یک کلیپ ویدیویی تمام می شود!

خروج از کشورها

بسته به مورد استفاده ، این امر اهمیت متفاوتی دارد. برای موارد استفاده مانند من ، که باید در یک کشور خاص به پایان برسم ، البته که باید در لیست باشد. همچنین باید به من اجازه داده شود که از کدام کشور خارج می شوم. سرویس هایی وجود دارد که در آنها نمی توانید کشور خروج را انتخاب کنید ، از آنها دوری کنید. شما می توانید در کشوری با عملکرد بد یا قوانین حفظ حریم خصوصی به سرانجام برسید. حتی اگر به کشور خاصی احتیاج ندارید ، باید خدماتی را با چند کشور مختلف انتخاب کنید تا بتوانید خدماتی با عملکرد خوب پیدا کنید.

نوع نرم افزار و پشتیبانی

این یکی از دلایل اصلی ترجیح خدمات با یک آزمون رایگان است. بسیاری از ارائه دهندگان نرم افزار بد وجود دارند که اشکال ندارند ، ناامن هستند یا کار نمی کنند. برای پیاده سازی Raspberry Pi به ارائه دهنده ای نیاز دارم که از OpenVPN پشتیبانی کند.

انتخاب من

برای این ساخت من با Tunnel Bear رفتم. یک آزمایش رایگان تا 500 گیگابایت ارائه می شود تا بتوانم آزمایش کنم که قبل از پرداخت هر چیزی می توانم جریان داشته باشم. آنها در کانادا مستقر هستند که در کنار سوئد دارای برخی از قوی ترین قوانین حفظ حریم خصوصی در جهان هستند. هیچگونه محدودیتی در سرویس پولی وجود ندارد و همچنین اجازه دارم چندین دستگاه را همزمان وصل کنم. بنابراین محافظت از تلفن ، رایانه لوحی و رایانه من هنگام سفر با وای فای ناامن نیز مرتب شده است. گره خروجی در سوئد پشتیبانی می شود ، در واقع از طریق Bahnhof ارائه می شود که به دلیل حفظ حریم خصوصی قوی در سوئد شناخته شده است. آنها برای برنامه های پولی پشتیبانی OpenVPN را ارائه می دهند. آنها آزمایش رایگان را انجام نمی دهند ، اما کافی است آن را از لپ تاپ خود اجرا کنید تا مطمئن شوید خدمات جریان کار می کند.

مرحله 2: Raspberry Pi را نصب کنید

برای پیاده سازی هایی مانند این ، من از سیستم عامل Raspbian Lite استفاده می کنم. از آنجا که من به GUI اصلاً نیازی ندارم. در اینجا می توانید آخرین نسخه را دریافت کنید.

من از Win32DiskImager برای بارگیری فایل.img در کارت SD رزبری پای استفاده می کنم.

پس از راه اندازی Raspberry Pi ، من در فهرست DHCP روترهای خود به دنبال آدرس IP هستم و سپس از طریق SSH با Putty متصل می شوم. نام کاربری و رمز عبور استاندارد pi/raspberry است

پس از اتصال ، raspi-config را برای تغییر تنظیمات اصلی اجرا می کنم.

sudo raspi-config

مهمترین مواردی که باید در این پیکربندی رعایت شود عبارتند از:

  • گسترش سیستم فایل
  • تغییر رمز عبور

در صورت تمایل می توانید نام میزبان رزبری پای خود را تغییر دهید. DHCP من اجاره بسیار طولانی دارد و همچنین می توانم آدرس خاصی را رزرو کنم. اگر این توانایی را ندارید ، باید Raspberry Pi را برای استفاده از آدرس IP ثابت تنظیم کنید. از آنجا که سایر دستگاهها از این درگاه پیش فرض استفاده می کنند ، مهم است که از آدرس IP یکسانی استفاده کند. در اینجا پستی است که در مورد تنظیم IP ثابت در Raspbian Jessie نوشتم.

سپس باید همه چیز را به آخرین نسخه ارتقا دهیم:

sudo apt-get updatesudo apt-get upgrade sudo apt-get dist-upgrade

مرحله 3: OpenVPN را نصب کنید

OpenVPN را نصب کنید
OpenVPN را نصب کنید

اکنون باید OpenVPN را روی Raspberry Pi نصب کنیم.

sudo apt-get openvpn را نصب کنید

سپس باید مطمئن شویم که سرویس به درستی شروع می شود.

sudo systemctl openvpn را فعال کنید

پس از اتمام نصب ، باید فایلهای پیکربندی OpenVPN و گواهینامه ها را در جعبه کپی کنیم. این توسط ارائه دهنده VPN شما به شما ارائه می شود. در مورد من ، با استفاده از TunnelBear ، یک پست وبلاگی در مورد پشتیبانی لینوکس پیدا کردم. در آن صفحه پیوندی برای فایل فشرده وجود دارد که حاوی همه چیزهایی است که ما نیاز داریم.

این فایل شامل فایل های گواهی و یک فایل پیکربندی.pvn برای هر کشوری است که می توانید به آن تونل بزنید. شما به تمام پرونده های گواهی و فایل پیکربندی.opvn برای کشور مورد نظر خود ، در مورد من سوئد ، نیاز دارید. فایل های مورد نیاز را از حالت فشرده خارج کرده و برای بارگذاری فایل ها در رزبری پای خود از wincp استفاده کنید. همان نام کاربری/گذرواژه ای که برای SSH استفاده می شود شما را به/home/pi می رساند ، فقط فایل ها را در آنجا رها کنید.

سپس به پایانه SSH باز می گردیم و فایل ها را به پوشه OpenVPN منتقل می کنیم. اولین فرمان این است که مطمئن شوید در پوشه /home /pi هستیم.

cd /home /pi

sudo mv */etc/openvpn/

اکنون باید تعدادی تغییر در پرونده ها انجام دهیم. ابتدا باید نام فایل پیکربندی را از.ovpn به.conf تغییر دهیم. هر فایلی که به پوشه ابتدا باید وارد آن فهرست شویم.

cd /etc /openvpn

سپس نام فایل پیکربندی را تغییر می دهیم. تا زمانی که به.conf ختم شود ، می توانید هر چیزی را که می خواهید نامگذاری کنید. من ترجیح می دهم از نام فایلها بدون فاصله خالی استفاده کنم ، در این مورد من با swe.conf می روم.

sudo mv *.ovpn swe.conf

سپس به یک فایل احراز هویت نیاز داریم که حاوی نام کاربری و رمز عبور مورد استفاده برای تونل VPN باشد. یک ویرایشگر متن باز کنید و نام کاربری و رمز عبور را در خطوط جداگانه بنویسید. ما این فایل را author.txt می نامیم.

sudo nano auth.txt

محتوا باید مانند این مثال باشد:

نام کاربری

کلمه عبور

سپس از CTRL + O برای نوشتن روی فایل و از CTRL + X برای خروج از ویرایشگر متن نانو استفاده کنید. ما همچنین باید از فایل auth.txt حاوی اطلاعات کاربری خود محافظت کنیم.

sudo chmod 600 /etc/openvpn/auth.txt

سپس باید فایل پیکربندی را ویرایش کنیم تا از صحت همه مسیرها مطمئن شویم و یک مرجع به فایل auth.txt تازه ایجاد شده اضافه کنیم.

sudo nano swe.conf

خطوطی که باید تغییر کنند ، خطوطی هستند که به فایل های دیگر اشاره می کنند ، آنها باید مسیرهای مطلق باشند. در این مثال این چیزی است که ما به دنبال آن هستیم:

ca CACertificate.crt

cert UserCertificate.crt key PrivateKey.key

ما آنها را به مسیرهای مطلق مانند این تغییر می دهیم:

ca /etc/openvpn/CACertificate.crt

cert /etc/openvpn/UserCertificate.crt key /etc/openvpn/PrivateKey.key

سپس در انتهای فایل ما یک مرجع به فایل auth.txt اضافه می کنیم ، مانند این:

auth-user-pass /etc/openvpn/auth.txt

یکبار دیگر از CTRL + O برای ذخیره فایل و سپس از CTRL + X برای خروج از نانو استفاده می کنیم. اکنون می توانیم شیطان OpenVPN را راه اندازی مجدد کنیم و ببینیم که تونل کار می کند.

راه اندازی مجدد sudo openvpn

اگر دستور ifconfig را اجرا می کنید ، در صورت بالا بودن تونل ، علاوه بر آداپتورهای eth0 و lo ، باید یک آداپتور tun0 نیز مشاهده کنید. همچنین می توانید دستور زیر را برای بررسی IP عمومی خود اجرا کنید:

wget https://ipinfo.io/ip -qO -

اگر با بالا آمدن تونل مشکل دارید ، ابتدا Raspberry Pi خود را مجدداً راه اندازی کنید و سپس پیکربندی را برای خطاها دوباره بررسی کنید.

مرحله 4: تنظیم مسیریابی

اکنون ما باید حمل و نقل IP را فعال کنیم. ترافیک شبکه را قادر می سازد تا از یکی از رابط های شبکه وارد شده و از رابط دیگر خارج شود. در اصل ایجاد یک روتر.

sudo /bin /su -c "echo -e '\ n#فعال کردن مسیریابی IP / nnet.ipv4.ip_forward = 1'> /etc/sysctl.conf"

اگر sudo sysctl -p را اجرا می کنید ، باید این را روی صفحه چاپ کنید:

net.ipv4.ip_forward = 1

در حال حاضر مسیریابی فعال است و ترافیک می تواند از طریق رزبری پای ، از طریق تونل و خارج از اینترنت انجام شود.

مرحله 5: Firewall و NAT را راه اندازی کنید

از آنجا که ما چندین مشتری در داخل داریم که از طریق یک آدرس IP عمومی به اینترنت دسترسی دارند ، باید از NAT استفاده کنیم. این مخفف عبارت ترجمه آدرس شبکه است و پیگیری می کند که در هنگام بازگشت اطلاعات از طریق تونل ، کدام مشتری چه ترافیکی را درخواست کرده است. ما همچنین باید امنیت را در اطراف رزبری پای خود و تونل ایجاد کنیم.

sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

فعال کردن NAT

sudo iptables -A FORWARD -i eth0 -o tun0 -j ACCEPT

اجازه می دهد هرگونه ترافیکی از eth0 (داخلی) از tun0 (تونل) عبور کند.

sudo iptables -A FORWARD -i tun0 -o eth0 -m state -state مرتبط ، استقرار -j پذیرش

اجازه می دهد ترافیک از tun0 (تونل) به بیش از eth0 (داخلی) برگردد. از آنجا که ما وضعیت RELATED ، ESTABLISHED را مشخص می کنیم ، به اتصال آغاز شده از شبکه داخلی محدود می شود. مسدود کردن ترافیک خارجی در تلاش برای ایجاد اتصال جدید.

sudo iptables -A INPUT -i lo -j ACCEPT

اجازه دادن به ترافیک loopback خود Raspberry Pi.

sudo iptables -A INPUT -i eth0 -p icmp -j ACCEPT

به رایانه های موجود در شبکه محلی اجازه می دهد تا رزبری پای را پینگ کنند.

sudo iptables -A INPUT -i eth0 -p tcp --dport 22 -j ACCEPT

اجازه SSH از شبکه داخلی

sudo iptables -A INPUT -m state -state تأسیس ، مرتبط -j پذیرش

اجازه می دهد تمام ترافیک ایجاد شده توسط Raspberry Pi برگردد. این همان اصل دولت قبلی است.

sudo iptables -P FORWARD DROP

sudo iptables -P INPUT DROP sudo iptables -L

اگر ترافیک با هیچ یک از قوانین مشخص شده مطابقت نداشته باشد ، حذف می شود.

sudo apt-get install iptables-persistent

sudo systemctl netfilter-persistent را فعال کنید

خط اول یک آرامش کد را نصب می کند که باعث می شود قوانین قابل iptable که ما بین راه اندازی مجدد ایجاد کرده ایم ، مداوم باشند. مورد دوم پس از تغییر قوانین ، آنها را ذخیره می کند. این بار کافی است اولین مورد را اجرا کنید. در صورت تغییر قوانین ، دومین مورد را برای ذخیره اجرا کنید. اگر به هم ریختید و دسترسی خود را از دست دادید ، قوانین راه اندازی مجدد به محض اضافه شدن اعمال می شوند و فقط راه اندازی مجدد کنید و مواردی که قبلاً ذخیره نشده اند بازگردانده می شوند.

مرحله 6: نتیجه گیری

اکنون می توانید از این تونل از هر دستگاه یا رایانه ای در همان شبکه استفاده کنید. کافی است دروازه پیش فرض را به هر آدرس IP رزبری پای خود تغییر دهید. در مورد من ، هر دو مرکز رسانه ای Kodi من (یک اتاق خواب و یک اتاق نشیمن) از این اتصال استفاده می کنند تا بتوانم کانالهای بازی سوئدی خود را پخش کنم. البته موارد دیگری نیز وجود دارد که می توانید از آنها برای استفاده نیز استفاده کنید.

فقط به خاطر داشته باشید که بسته به تأمین کننده VPN انتخاب شده و سرعت اتصال به اینترنت ممکن است عملکرد کندی داشته باشید.

اگر سوالی دارید یا می خواهید چیزی را توضیح دهم ، در نظرات به من اطلاع دهید! برای پست بیشتر در زمینه فناوری لطفا به وبلاگ من Hackviking مراجعه کنید!

توصیه شده: