Vairāku Vultr zonu savienošana ar N2N

N2N ir atvērtā pirmkoda 2/3 VPN lietojumprogramma. Atšķirībā no daudzām citām VPN programmām, N2N var savienot datorus, kas atrodas aiz NAT maršrutētāja. Tas sniedz milzīgu priekšrocību, lai izveidotu savienojumu ar mākoņa vidi, nepaļaujoties uz īpašiem protokoliem, piemēram, ESP protokolu (ko izmanto ipsec). Lai izveidotu šo savienojumu, N2N izmanto supermezglu, kas var maršrutēt informāciju starp NAT mezgliem. Šo VPN savienojumu var izmantot, lai kopā savienotu vairākus Vultr gadījumus dažādos reģionos.

Priekšnoteikumi

Šajā piemērā mēs izmantosim trīs mezglus vairākās zonās:

  • Parīze
  • Maiami
  • Sidneja

Programmatūras instalēšana

Katrā instancē tiks izpildītas šādas komandas.

Sāciet, instalējot build-essentialno repo un arī libssl-dev, jo mēs veidosim no jaunākā pirmkoda.

apt-get install -y build-essential libssl-dev

Pēc tam lejupielādējiet avota kodu no github.

cd /tmp
git clone https://github.com/ntop/n2n.git

Apkopojiet visus bināros failus.

cd n2n 
make
make install

make installKomanda būs izveidojis supernodeun edgebināros failus šajā /usr/sbindirektorijā. Pabeidziet, iztīrot failus.

rm -rf /tmp/n2n

Uzstādīšana - Node Paris

Pirmais mezgls būs mūsu tā sauktais supermezgls. Šis supermezgls sāks supermezgla pakalpojumu, kas klausīsies UDP portā 1200. Pēc noklusējuma N2N lietojumprogramma neveido pakalpojuma failu. Tāpēc mums būs jānodrošina savs.

Izveidojiet pakalpojuma failu 'n2n_supernode':

nano /etc/systemd/system/n2n_supernode.service

Pievienojiet šādu saturu:

[Unit]
Description=n2n supernode
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/supernode -l 1200

[Install]
WantedBy=multi-user.target

"-l" direktīva nosaka UDP portu 1200. Tas ir ports, kurā supermezgls klausīsies. Lai pārliecinātos, ka viss darbojas, palaidiet supermezgla pakalpojumu:

systemctl start n2n_supernode

Pārbaudiet supermezgla statusu.

systemctl status n2n_supernode

Tas parādīs statusu, kas līdzīgs tālāk norādītajam.

● n2n_supernode.service - n2n supernode
   Loaded: loaded (/etc/systemd/system/n2n_supernode.service; disabled; vendor prese
   Active: active (running) since Wed 2018-08-15 17:07:46 UTC; 5s ago
 Main PID: 4711 (supernode)
    Tasks: 1
   Memory: 80.0K
      CPU: 1ms
   CGroup: /system.slice/n2n_supernode.service
           └─4711 /usr/sbin/supernode -l 1200

Tālāk mēs izveidosim malas pakalpojumu. Šis malas pakalpojums pieprasīs privātu IP saziņai starp citām malām citās Vultr zonās.

Tāpat kā supernode pakalpojumam, arī šim būs nepieciešams savs pakalpojuma fails.

nano /etc/systemd/system/n2n_edge.service

Pievienojiet šādu saturu:

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target n2n_supernode.service

[Service]
ExecStart=/usr/sbin/edge -l localhost:1200 -c Vultr -a 192.168.1.1 -k mypassword -f

[Install]
WantedBy=multi-user.target

Šajā pakalpojuma failā mēs definējām šādas komandrindas opcijas:

  • -l localhost:1200: tiks izveidots savienojums ar localhost UDP portā 1200.
  • -c Vultr: šī ir kopiena, kurai pievienosies mala. Visas vienas kopienas malas parādās tajā pašā LAN (2. slāņa tīkla segments). Malas, kas neatrodas vienā kopienā, nesazināsies viena ar otru.
  • -a 192.168.1.1: šai saskarnei piešķirtā IP adrese. Šī ir N2N virtuālā LAN IP adrese, kas tiek pieprasīta.
  • -k mypassword: katrai malai izmantotā parole. Visām malām, kas sazinās, ir jāizmanto viena atslēga un kopienas nosaukums.
  • -f: atspējo dēmonu režīmu un liek malai darboties priekšplānā. Tas ir nepieciešams pakalpojuma failam, pretējā gadījumā pakalpojums systemctlnetiks startēts.

Lai pārliecinātos, ka viss darbojas, sāciet pakalpojumu.

systemctl start n2n_edge

Pēc tam vaicājiet pakalpojuma statusu.

systemctl status n2n_edge   

Izvade būs līdzīga tālāk norādītajam.

● n2n_edge.service - n2n edge
   Loaded: loaded (/etc/systemd/system/n2n_edge.service; disabled; vendor preset: en
   Active: active (running) since Wed 2018-08-15 17:10:46 UTC; 3s ago
 Main PID: 4776 (edge)
    Tasks: 1
   Memory: 396.0K
      CPU: 8ms
   CGroup: /system.slice/n2n_edge.service
           └─4776 /usr/sbin/edge -l localhost:1200 -c Vultr -a 192.168.1.1 -k mypass

Ja atzīmēsim “ifconfig”, jūs redzēsit, ka edge0saskarne pieprasa N2N virtuālo IP .

ifconfig

Izvade būs līdzīga tālāk norādītajam.

edge0     Link encap:Ethernet  HWaddr 42:14:55:64:7d:21
          inet addr:192.168.1.1  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::4014:55ff:fe64:7d21/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Kad tas ir izdarīts, iespējojiet un izveidojiet ugunsmūra noteikumus. Noteikti aizstājiet node_miami_ipun node_sydney_iptekstu ar Sidnejas un Maiami instances publisko IP. (Mēs tos izmantosim vēlāk).

ufw allow 22/tcp
ufw allow from node_miami_ip to any port 1200
ufw allow from node_sydney_ip to any port 1200
ufw enable

Pēdējā lieta, kas jādara ar šo mezglu, ir abu pakalpojumu iespējošana sāknēšanas laikā.

systemctl enable n2n_supernode.service
systemctl enable n2n_edge.service

Uzstādīšana - Node Miami

Maiami mezgls izveidos savienojumu ar supermezglu, kas pašlaik darbojas Parīzes zonā. Lai to panāktu, mums ir tikai jāizveido edgelietojumprogrammas pakalpojuma fails .

Sāciet, izveidojot malas pakalpojuma failu.

nano /etc/systemd/system/n2n_edge.service

Pievienojiet tālāk norādīto saturu.

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/edge -l node_paris_ip:1200 -c Vultr -a 192.168.1.2 -k mypassword -f

[Install]
WantedBy=multi-user.target

Piezīme . Aizstājiet node_paris_ipar tā instances publisko IP, kas darbojas Parīzē

Tas izveidos savienojumu ar Parīzes mezglu UDP portā 1200, pievienosies kopienai ' Vultr', pieprasīs IP 192.168.1.2un autentificēsies ar ' mypassword'.

Pēc tam sāciet pakalpojumu.

systemctl start n2n_edge

Pārbaudiet statusu, lai norādītu, ka pakalpojums ir sācies pareizi un darbojas.

systemctl status n2n_edge   

Pēc tam pārliecinieties, vai edge0IP tiek pieprasīts.

ifconfig

Tas parādīs 192.168.1.2IP adresi.

edge0     Link encap:Ethernet  HWaddr 42:14:55:64:7d:21
          inet addr:192.168.1.2  Bcast:192.168.1.255  Mask:255.255.255.0
          inet6 addr: fe80::4014:55ff:fe64:7d21/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Nākamā lieta, kas jādara, ir pakalpojuma iespējošana sāknēšanas laikā.

systemctl enable n2n_edge.service

Pēc izvēles iespējojiet ugunsmūri un pievienojiet SSH noteikumus.

ufw allow 22/tcp
ufw enable

Tagad mēs varēsim pārbaudīt abas malas, kas darbojas mūsu gadījumos.

Parīzē, piezvaniet Vultr instancei Maiami

ping 192.168.1.2

Maiami, ping the edge Parīzē

ping 192.168.1.1

Uzstādīšana - Node Sidneja

Visbeidzot, mēs pievienosim mūsu pēdējo kontinentu: Austrāliju. Sāciet vēlreiz, izveidojot malas pakalpojumu. Šis malas pakalpojums arī izveidos savienojumu ar iepriekšējo konfigurēto supermezglu Parīzē.

nano /etc/systemd/system/n2n_edge.service

Pievienojiet tālāk norādīto saturu.

[Unit]
Description=n2n edge
Wants=network-online.target
After=network-online.target

[Service]
ExecStart=/usr/sbin/edge -l node_paris_ip:1200 -c Vultr -a 192.168.1.3 -k mypassword -f

[Install]
WantedBy=multi-user.target

Piezīme . Aizstājiet node_paris_ipar tā instances publisko IP, kas darbojas Parīzē.

Tas izveidos savienojumu ar Parīzes mezglu UDP portā 1200, pievienosies kopienai ' Vultr', pieprasīs IP 192.168.1.3un autentificēsies ar ' mypassword'.

systemctl start n2n_edge

Pārbaudiet statusu, lai pārliecinātos, ka pakalpojums ir palaists.

systemctl status n2n_edge   

Pārliecinieties, vai edge0IP tiek pieprasīts.

edge0     Link encap:Ethernet  HWaddr 46:56:b0:e9:8f:8a
          inet addr:192.168.1.3  Bcast:192.168.1.255  Mask:255.255.255.0
        inet6 addr: fe80::4456:b0ff:fee9:8f8a/64 Scope:Link
        UP BROADCAST RUNNING MULTICAST  MTU:1400  Metric:1
        RX packets:0 errors:0 dropped:0 overruns:0 frame:0
        TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
        collisions:0 txqueuelen:1000
        RX bytes:0 (0.0 B)  TX bytes:648 (648.0 B)

Atkal iespējojiet šo pakalpojumu sāknēšanas laikā.

systemctl enable n2n_edge.service

Pēc izvēles iespējojiet ugunsmūri un pievienojiet SSH noteikumus.

ufw allow 22/tcp
ufw enable

Tagad mēs varēsim ping katru Vultr gadījumu no katra mezgla.

ping 192.168.1.1
ping 192.168.1.2
ping 192.168.1.3

Ja vēlaties pārbaudīt savienojumu starp katru mezgla malu, iespējojiet ugunsmūra noteikumus Maiami un Parīzes gadījumiem. Tas ļaus sazināties starp malām.

Maiami pievienojiet šādus noteikumus. (Nomainiet node_paris_ipun node_sydney_iptekstu ar Sidnejas un Parīzes gadījumu publiskajiem IP adresēm.)

ufw allow from node_paris_ip to any port 1200
ufw allow from node_sydney_ip to any port 1200

Sidnejā pievienojiet šādus noteikumus.

ufw allow from node_paris_ip to any port 1200
ufw allow from node_miami_ip to any port 1200

Tagad varat izslēgt vai atsāknēt supermezglu. Tīkla savienojumi turpinās pastāvēt. Savienojuma problēmas radīs tikai jaunās malas, kamēr supermezgla pakalpojums nedarbojas.

Secinājums

Mēs esam veiksmīgi konfigurējuši VPN savienojumu starp vairākām zonām. Tam vajadzētu piedāvāt diezgan daudz jaunu iespēju augstas pieejamības scenārijiem mūsu tikko konfigurētajā vidē.


Instalējiet Plesk operētājsistēmā CentOS 7

Instalējiet Plesk operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Plesk ir patentēts tīmekļa mitinātāja vadības panelis, kas ļauj lietotājiem administrēt savas personīgās un/vai klientu vietnes, datu bāzes

Iestatiet Cacti vietnē Debian Jessie

Iestatiet Cacti vietnē Debian Jessie

Ievads Cacti ir atvērtā koda uzraudzības un grafiku veidošanas rīks, kas pilnībā ir balstīts uz RRD datiem. Izmantojot Cacti, varat pārraudzīt gandrīz jebkura veida ierīces

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Instalējiet Lets Encrypt SSL WordPress lietotnē ar vienu klikšķi

Ievads Lets Encrypt ir sertifikācijas iestādes pakalpojums, kas piedāvā bezmaksas TLS/SSL sertifikātus. Instalēšanas procesu vienkāršo Certbot,

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Kā iestatīt Tekkit Classic serveri Ubuntu 16.10

Vai izmantojat citu sistēmu? Kas ir Tekkit Classic? Tekkit Classic ir modifikācija spēlei, kuru visi zina un mīl; Minecraft. Tajā ir daži no ver

Iestatiet iRedMail vietnē Debian Wheezy

Iestatiet iRedMail vietnē Debian Wheezy

Vai izmantojat citu sistēmu? Šī apmācība parādīs, kā instalēt grupas programmu iRedMail jaunā Debian Wheezy instalācijā. Jums vajadzētu izmantot servi

Jekyll emuāra izveide Ubuntu 16.04

Jekyll emuāra izveide Ubuntu 16.04

Vai izmantojat citu sistēmu? Jekyll ir lieliska alternatīva WordPress emuāru rakstīšanai vai satura kopīgošanai. Tam nav nepieciešamas nekādas datu bāzes, un tas ir ļoti vienkārši

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Kā iestatīt neuzraudzītus jauninājumus Debian 9 (Stretch)

Vai izmantojat citu sistēmu? Ja iegādājaties Debian serveri, jums vienmēr ir jābūt jaunākajiem drošības ielāpiem un atjauninājumiem neatkarīgi no tā, vai jūs guļat vai ne.

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

Kā instalēt un konfigurēt PHP 7.0 vai PHP 7.1 Ubuntu 16.04

PHP un saistītās pakotnes ir visbiežāk izmantotie komponenti, izvietojot tīmekļa serveri. Šajā rakstā mēs uzzināsim, kā iestatīt PHP 7.0 vai PHP 7.1 o

Kā instalēt Squid starpniekserveri CentOS

Kā instalēt Squid starpniekserveri CentOS

Squid ir populāra bezmaksas Linux programma, kas ļauj izveidot pāradresācijas tīmekļa starpniekserveri. Šajā rokasgrāmatā jūs redzēsit, kā instalēt Squid uz CentOS, lai jūs pārvērstu

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Kā instalēt Lighttpd (LLMP Stack) operētājsistēmā CentOS 6

Ievads Lighttpd ir Apache dakša, kuras mērķis ir daudz mazāk resursietilpīgs. Tas ir viegls, tāpēc arī tā nosaukums ir diezgan vienkārši lietojams. Instalēšana

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

Trīs bezmaksas servera vadības paneļi (ātrā instalēšana)

1. Virtualmin/Webmin Virtualmin ir jaudīgs un elastīgs tīmekļa mitināšanas vadības panelis Linux un UNIX sistēmām, pamatojoties uz labi zināmo atvērtā pirmkoda tīmekļa bāzi

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii lietojumprogrammas iestatīšana Ubuntu 14.04

Yii ir PHP ietvars, kas ļauj ātrāk un vienkāršāk izstrādāt lietojumprogrammas. Yii instalēšana Ubuntu ir vienkārša, jo jūs to uzzināsit precīzi

Ekrāna izmantošana Ubuntu 14.04

Ekrāna izmantošana Ubuntu 14.04

Ekrāns ir lietojumprogramma, kas ļauj vairākkārt izmantot termināļa sesijas vienā logā. Tas ļauj simulēt vairākus termināļa logus, kur tas ma

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Iestatiet savu DNS serveri vietnē Debian/Ubuntu

Šajā apmācībā ir paskaidrots, kā iestatīt DNS serveri, izmantojot Bind9 uz Debian vai Ubuntu. Visā rakstā attiecīgi aizstājiet savu-domēna-nosaukums.com. plkst

Logrotate izmantošana žurnālfailu pārvaldībai

Logrotate izmantošana žurnālfailu pārvaldībai

Ievads Logrotate ir Linux utilīta, kas vienkāršo žurnālfailu administrēšanu. Tas parasti darbojas reizi dienā, izmantojot cron uzdevumu, un pārvalda žurnālu bāzi

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 modificēšana, lai izmantotu galveno/klienta modeli operētājsistēmā CentOS 6 vai CentOS 7

Icinga2 ir spēcīga uzraudzības sistēma, un, ja to izmanto galvenā klienta modelī, tā var aizstāt vajadzību pēc NRPE balstītām uzraudzības pārbaudēm. Meistars-klients

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Iestatiet Red5 Media Server operētājsistēmā Ubuntu 16.04

Vai izmantojat citu sistēmu? Red5 ir atvērtā pirmkoda multivides serveris, kas ieviests Java un ļauj palaist Flash vairāku lietotāju lietojumprogrammas, piemēram, tiešraides straumēšanu.

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Kompilējiet un instalējiet Nginx ar PageSpeed ​​moduli operētājsistēmā Debian 8

Šajā rakstā mēs redzēsim, kā apkopot un instalēt Nginx galveno līniju no oficiālajiem Nginx avotiem ar PageSpeed ​​moduli, kas ļauj t

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā Ubuntu 16.04 LTS

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Kā instalēt Apache Cassandra 3.11.x operētājsistēmā CentOS 7

Vai izmantojat citu sistēmu? Apache Cassandra ir bezmaksas un atvērtā koda NoSQL datu bāzes pārvaldības sistēma, kas ir izstrādāta, lai nodrošinātu mērogojamību, hig.

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mašīnu pieaugums: AI reālās pasaules lietojumi

Mākslīgais intelekts nav nākotnē, tas ir šeit, tagadnē. Šajā emuārā lasiet, kā mākslīgā intelekta lietojumprogrammas ir ietekmējušas dažādas nozares.

DDOS uzbrukumi: īss pārskats

DDOS uzbrukumi: īss pārskats

Vai arī jūs esat DDOS uzbrukumu upuris un esat neizpratnē par profilakses metodēm? Izlasiet šo rakstu, lai atrisinātu savus jautājumus.

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Vai esat kādreiz domājis, kā hakeri pelna naudu?

Iespējams, esat dzirdējuši, ka hakeri pelna daudz naudas, bet vai esat kādreiz domājuši, kā viņi nopelna šādu naudu? pārrunāsim.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Google revolucionāri izgudrojumi, kas atvieglos jūsu dzīvi.

Vai vēlaties redzēt revolucionārus Google izgudrojumus un to, kā šie izgudrojumi mainīja katra cilvēka dzīvi mūsdienās? Pēc tam lasiet emuārā, lai redzētu Google izgudrojumus.

Piektdiena: kas notika ar AI vadītām automašīnām?

Piektdiena: kas notika ar AI vadītām automašīnām?

Pašpiedziņas automobiļu koncepcija izbraukt uz ceļiem ar mākslīgā intelekta palīdzību ir mūsu sapnis jau kādu laiku. Bet, neskatoties uz vairākiem solījumiem, tie nekur nav redzami. Lasiet šo emuāru, lai uzzinātu vairāk…

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Tehnoloģiskā singularitāte: cilvēces civilizācijas tāla nākotne?

Zinātnei strauji attīstoties, pārņemot lielu daļu mūsu pūļu, palielinās arī risks pakļaut sevi neizskaidrojamai singularitātei. Izlasiet, ko singularitāte varētu nozīmēt mums.

Datu glabāšanas evolūcija – infografika

Datu glabāšanas evolūcija – infografika

Datu uzglabāšanas metodes ir attīstījušās kopš datu dzimšanas. Šajā emuārā ir aprakstīta datu uzglabāšanas attīstība, pamatojoties uz infografiku.

Lielo datu atsauces arhitektūras slāņu funkcijas

Lielo datu atsauces arhitektūras slāņu funkcijas

Lasiet emuāru, lai vienkāršākā veidā uzzinātu dažādus lielo datu arhitektūras slāņus un to funkcijas.

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

6 brīnišķīgas priekšrocības, ko sniedz viedo mājas ierīču izmantošana mūsu dzīvē

Šajā digitālajā pasaulē viedās mājas ierīces ir kļuvušas par būtisku dzīves sastāvdaļu. Šeit ir daži pārsteidzoši viedo mājas ierīču ieguvumi, lai padarītu mūsu dzīvi dzīves vērtu un vienkāršāku.

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

MacOS Catalina 10.15.4 papildinājuma atjauninājums rada vairāk problēmu nekā to risināšana

Nesen Apple izlaida macOS Catalina 10.15.4 papildinājuma atjauninājumu, lai novērstu problēmas, taču šķiet, ka atjauninājums rada vairāk problēmu, kas izraisa Mac datoru bloķēšanu. Izlasiet šo rakstu, lai uzzinātu vairāk