Სარჩევი:

Raspberry Pi VPN Gateway: 6 ნაბიჯი
Raspberry Pi VPN Gateway: 6 ნაბიჯი

ვიდეო: Raspberry Pi VPN Gateway: 6 ნაბიჯი

ვიდეო: Raspberry Pi VPN Gateway: 6 ნაბიჯი
ვიდეო: How to setup a Raspberry Pi OpenVPN gateway 2024, ივლისი
Anonim
Raspberry Pi VPN Gateway
Raspberry Pi VPN Gateway

განახლება 2018-01-07:

  • განახლებულია დაკარგული საგნები და საჭირო ხდება ცვლილებები 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.

ჩემი შერჩევა

ამ აღნაგობისთვის წავედი გვირაბის დათვთან ერთად. 500 გბ -მდე უფასო ტესტი არის შემოთავაზებული, ასე რომ შემიძლია შევამოწმო, რომ რეალურად შემეძლო ნაკადი სანამ რამეს გადავიხდი. ისინი დაფუძნებულია კანადაში, რომელსაც შვედეთის გვერდით აქვს კონფიდენციალურობის ყველაზე ძლიერი კანონი მსოფლიოში. ფასიანი სერვისის შესახებ მონაცემთა შეზღუდვა არ არსებობს და მე ასევე მაქვს უფლება ერთდროულად რამდენიმე მოწყობილობა მქონდეს დაკავშირებული. ასე რომ, ჩემი ტელეფონის, ტაბლეტისა და კომპიუტერის დაცვა არაუსაფრთხო wifi– ზე მოგზაურობისას ასევე დალაგებულია. შვედეთში გასასვლელი კვანძი მხარდაჭერილია, ის რეალურად უზრუნველყოფილია Bahnhof– ის საშუალებით, რომელიც ცნობილია შვედეთში ძლიერი კონფიდენციალურობით. ფასიანი გეგმებისთვის ისინი გვთავაზობენ OpenVPN მხარდაჭერას. ისინი არ აკეთებენ უფასო გამოცდას, მაგრამ საკმარისი იყო ჩემი ლეპტოპიდან მისი გაშვება, რათა დავრწმუნებულიყავი, რომ ნაკადი სერვისები მუშაობდა.

ნაბიჯი 2: დააინსტალირეთ Raspberry Pi

მსგავსი განხორციელებისთვის ვიყენებ Raspbian Lite ოპერაციულ სისტემას. რადგან მე საერთოდ არ მჭირდება GUI. აქ შეგიძლიათ მიიღოთ უახლესი გამოშვება.

მე ვიყენებ Win32DiskImager– ს, რომ დავატვირთო.img ფაილი SD ბარათზე Raspberry Pi– სთვის.

მას შემდეგ, რაც Raspberry Pi ჩატვირთა, მე ვუყურებ ჩემს მარშრუტიზატორებს DHCP სიაში, რომ მივიღო IP მისამართი და შემდეგ დავუკავშირო SSH– ს Putty– სთან. სტანდარტული მომხმარებლის სახელი და პაროლი არის pi/ჟოლო

დაკავშირებისთანავე ვუშვებ raspi-config ინსტრუმენტს ძირითადი პარამეტრების შესაცვლელად.

sudo raspi-config

ამ კონფიგურაციაში ყველაზე მნიშვნელოვანი რამ უნდა გაუფრთხილდეთ:

  • ფაილური სისტემის გაფართოება
  • Პაროლის შეცვლა

თქვენ ასევე შეგიძლიათ შეცვალოთ თქვენი Raspberry Pi მასპინძლის სახელი თუ გნებავთ. ჩემს DHCP– ს აქვს ძალიან გრძელი იჯარა და ასევე შემიძლია დავიცვა კონკრეტული მისამართი. თუ თქვენ არ გაქვთ ეს შესაძლებლობა, თქვენ უნდა დააკონფიგურიროთ Raspberry Pi, რომ გამოიყენოთ სტატიკური IP მისამართი. ვინაიდან სხვა მოწყობილობები გამოიყენებენ ამას, როგორც ნაგულისხმევი კარიბჭე, მნიშვნელოვანია, რომ ის კვლავ გამოიყენოს იგივე IP მისამართი. აქ არის პოსტი, რომელიც დავწერე რასპბიან ჯესიში სტატიკური IP– ის დაყენების შესახებ.

შემდეგ ჩვენ უნდა განვაახლოთ ყველაფერი უახლესი ვერსიით:

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– ის გამოყენებით, იქ ვიპოვე ბლოგის პოსტი Linux– ის მხარდაჭერის შესახებ. ამ გვერდზე არის ბმული zip ფაილზე, რომელიც შეიცავს ყველაფერს რაც ჩვენ გვჭირდება.

ფაილი შეიცავს სერთიფიკატის ფაილებს და.opvn კონფიგურაციის ფაილს თითოეული ქვეყნისთვის, სადაც შეგიძლიათ გვირაბის განთავსება. თქვენ გჭირდებათ ყველა სერტიფიკატის ფაილი და.opvn კონფიგურაციის ფაილი თქვენი არჩევანის ქვეყნისთვის, ჩემს შემთხვევაში შვედეთი. გახსენით საჭირო ფაილები და გამოიყენეთ wincp ფაილები თქვენს Raspberry Pi– ზე ასატვირთად. იგივე მომხმარებლის სახელი/პაროლი, როგორც SSH– ისთვის მოგიყვანთ/home/pi, უბრალოდ ჩააგდეთ ფაილები იქ.

შემდეგ ჩვენ ვბრუნდებით SSH ტერმინალში და ფაილებს გადავიტანთ OpenVPN საქაღალდეში. პირველი ბრძანება არის მხოლოდ იმის დარწმუნება, რომ ჩვენ ვართ /home /pi საქაღალდეში.

cd /home /pi

sudo mv */etc/openvpn/

ახლა ჩვენ გვჭირდება გარკვეული ცვლილებები ფაილებში. პირველ რიგში, ჩვენ გვჭირდება კონფიგურაციის ფაილის გადარქმევა.ovpn– დან.conf. ნებისმიერი ფაილი დამთავრებული.conf /etc /openvpn საქაღალდეში ავტომატურად დაიწყება როდესაც OpenVPN დემონი დაიწყება. პირველ რიგში, ჩვენ უნდა შევიდეთ ამ დირექტორიაში.

cd /etc /openvpn

შემდეგ ჩვენ ვცვლით კონფიგურაციის ფაილის სახელს. თქვენ შეგიძლიათ დაასახელოთ ის რაც გინდათ, სანამ ის დასრულდება.conf. მე მირჩევნია გამოვიყენო ფაილის სახელები ცარიელი ადგილების გარეშე, ამ შემთხვევაში მე swe.conf– ით მივდივარ.

sudo mv *.ovpn swe.conf

შემდეგ ჩვენ გვჭირდება ავტორიზაციის ფაილი, რომელიც შეიცავს მომხმარებლის გვირაბს და პაროლს, რომელიც გამოიყენება VPN გვირაბისათვის. გახსენით ტექსტური რედაქტორი და ჩაწერეთ მომხმარებლის სახელი და პაროლი ცალკეულ ხაზებზე. ჩვენ დავარქმევთ ამ ფაილს auth.txt.

sudo nano auth.txt

შინაარსი უნდა იყოს მსგავსი მაგალითი:

მომხმარებლის სახელი

პაროლი

შემდეგ გამოიყენეთ CTRL + O ფაილზე დასაწერად და CTRL + X ნანო ტექსტური რედაქტორის გასასვლელად. ჩვენ ასევე უნდა დავიცვათ author.txt ფაილი, რომელიც შეიცავს ჩვენს მონაცემებს.

sudo chmod 600/და ა.შ./openvpn /auth.txt

შემდეგ ჩვენ გვჭირდება კონფიგურაციის ფაილის რედაქტირება, რათა დავრწმუნდეთ, რომ ყველა ბილიკი სწორია და დავამატოთ მითითება ახლადშექმნილ author.txt ფაილზე.

sudo nano swe.conf

ხაზები, რომლებიც უნდა შეიცვალოს არის სხვა ფაილების მითითება, ისინი უნდა იყოს აბსოლუტური ბილიკები. ამ მაგალითში ეს არის ის, რასაც ჩვენ ვეძებთ:

ca CACertificate.crt

cert UserCertificate.crt გასაღები PrivateKey.key

ჩვენ ვცვლით მათ აბსოლუტურ გზებს შემდეგნაირად:

ca /etc/openvpn/CACertificate.crt

cert /etc/openvpn/UserCertificate.crt გასაღები /etc/openvpn/PrivateKey.key

შემდეგ ფაილის ბოლოს ჩვენ დავამატებთ მითითებას auth.txt ფაილს, მაგალითად:

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

კიდევ ერთხელ ვიყენებთ CTRL + O ფაილის შესანახად და შემდეგ CTRL + X ნანოდან გასასვლელად. ახლა ჩვენ შეგვიძლია გადატვირთოთ OpenVPN დემონი და ვნახოთ, რომ გვირაბი მუშაობს.

sudo სერვისი openvpn გადატვირთვა

თუ თქვენ გაუშვებთ ბრძანებას ifconfig თქვენ უნდა ნახოთ tun0 ადაპტერი თქვენი eth0 და lo გადამყვანები თუ გვირაბი მაღლაა. თქვენ ასევე შეგიძლიათ გაუშვათ ბრძანება ეს ბრძანება თქვენი საჯარო 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

ახლა მარშრუტიზაცია ჩართულია და ტრაფიკს შეუძლია გაიაროს Raspberry Pi, გვირაბის გავლით და ინტერნეტში.

ნაბიჯი 5: დააყენეთ Firewall და NAT

მას შემდეგ, რაც ჩვენ გვეყოლება რამდენიმე კლიენტი, რომლებიც შედიან ინტერნეტში ერთი საჯარო IP მისამართის საშუალებით, ჩვენ უნდა გამოვიყენოთ NAT. ეს ნიშნავს ქსელის მისამართების თარგმანს და თვალყურს ადევნებს რომელი კლიენტი ითხოვს რა ტრაფიკს, როდესაც ინფორმაცია ბრუნდება გვირაბზე. ჩვენ ასევე უნდა შევქმნათ გარკვეული დაცვა Raspberry Pi– ს გარშემო და გვირაბში.

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 სახელმწიფო -სახელმწიფო დაკავშირებული, დამკვიდრებული -j მიღება

ნებადართულია tun0– დან (გვირაბი) მოძრაობის დაბრუნება eth0– ზე (შიდა). მას შემდეგ, რაც ჩვენ დავაზუსტებთ მდგომარეობას RELATED, ESTABLISHED, ის შემოიფარგლება მხოლოდ შიდა ქსელიდან დაწყებული კავშირით. გარე ტრაფიკის დაბლოკვა ცდილობს ახალი კავშირის დაწყებას.

sudo iptables -A INPUT -i lo -j ACCEPT

Raspberry Pi- ს საკუთარი loopback ტრაფიკის დაშვება.

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 სახელმწიფო -სახელმწიფო დამყარებული, დაკავშირებული -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- მუდმივი

პირველი ხაზი აყენებს კოდის სიმშვიდეს, რაც ხდის გადასატვირთა წესებს, რომლებიც ჩვენ უბრალოდ შევქმენით გადატვირთვას შორის. მეორე ინახავს წესებს მას შემდეგ რაც თქვენ შეცვლით მათ. ამჯერად საკმარისია პირველის გაშვება. წესების შეცვლის შემთხვევაში გაუშვით მეორე შენახვისთვის. Iptable წესები მოქმედებს როგორც კი დაამატებთ მათ, თუ არეულობ და დაკარგავთ წვდომას, უბრალოდ გადატვირთეთ და ის, რაც ჯერ არ არის შენახული, დაბრუნდება.

ნაბიჯი 6: დასკვნა

ახლა თქვენ შეგიძლიათ გამოიყენოთ ეს გვირაბი ნებისმიერი მოწყობილობიდან ან კომპიუტერიდან იმავე ქსელში. უბრალოდ შეცვალეთ ნაგულისხმევი კარიბჭე ნებისმიერი IP მისამართით, რომელსაც აქვს თქვენი Raspberry Pi. ჩემს შემთხვევაში, ჩემი ორივე კოდის მედია ცენტრი (ერთი საძინებელი და ერთი მისაღები) იყენებს ამ კავშირს, ასე რომ მე შემიძლია გავაშუქო ჩემი შვედური სათამაშო არხები. რა თქმა უნდა, არის სხვა რამ, რისი გამოყენებაც შეგიძლიათ.

უბრალოდ გაითვალისწინეთ, რომ VPN მიმწოდებლის მიხედვით და თქვენი ინტერნეტ კავშირის სიჩქარედან გამომდინარე შეიძლება იყოს ნელი შესრულება.

თუ თქვენ გაქვთ რაიმე შეკითხვა ან გსურთ რამის გარკვევა, შემატყობინეთ კომენტარებში! მეტი ტექნიკური პოსტისთვის ეწვიეთ ჩემს ბლოგ ჰაკვიკინგს!

გირჩევთ: