Menghubungkan Beberapa Zon Vultr Dengan N2N

N2N adalah lapisan sumber terbuka 2/3 permohonan VPN. Tidak seperti banyak program VPN lain, N2N dapat menghubungkan komputer yang terletak di belakang penghala NAT. Ini menawarkan kelebihan besar untuk menyambung ke persekitaran awan tanpa perlu bergantung pada protokol khas seperti protokol ESP (digunakan oleh ipsec). Untuk mencapai hubungan ini, N2N menggunakan supernode yang dapat merutekan maklumat antara nod NAT'ed. Sambungan VPN ini boleh digunakan untuk menyambung banyak contoh Vultr merentas kawasan bersama.

Prasyarat

Dalam contoh ini kita akan menggunakan tiga nod dalam pelbagai zon:

  • Paris
  • Miami
  • Sydney

Pemasangan perisian

Perintah berikut akan dilaksanakan pada setiap contoh.

Mulakan dengan memasang build-essentialdari repo dan juga libssl-dev, kerana kami akan membina dari kod sumber terbaru.

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

Seterusnya, muat turun kod sumber dari github.

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

Susun semua binari.

cd n2n 
make
make install

The make installarahan akan telah mencipta supernodedan edgebinari dalam /usr/sbindirektori. Selesaikan dengan membersihkan fail.

rm -rf /tmp/n2n

Pemasangan - Node Paris

Node pertama akan menjadi supernode kita. Supernode ini akan memulakan perkhidmatan supernode yang akan didengar di port UDP 1200. Secara lalai aplikasi N2N tidak membuat fail perkhidmatan. Oleh itu, kita perlu menyediakan sendiri.

Buat fail perkhidmatan 'n2n_supernode':

nano /etc/systemd/system/n2n_supernode.service

Tambahkan kandungan berikut:

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

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

[Install]
WantedBy=multi-user.target

Arahan '-l' mentakrifkan port UDP 1200. Ini adalah pelabuhan di mana supernode akan mendengar. Untuk memastikan segala-galanya berfungsi, mulakan perkhidmatan supernode:

systemctl start n2n_supernode

Semak status supernode.

systemctl status n2n_supernode

Ini akan menunjukkan status yang serupa dengan yang berikut.

● 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

Seterusnya kami akan membuat perkhidmatan tepi. Perkhidmatan kelebihan ini akan menuntut IP peribadi untuk komunikasi antara tepi lain di zon Vultr yang lain.

Seperti dengan perkhidmatan supernode, ini juga memerlukan fail servis sendiri.

nano /etc/systemd/system/n2n_edge.service

Tambahkan kandungan berikut:

[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

Dalam fail perkhidmatan ini, kami menentukan pilihan baris perintah berikut:

  • -l localhost:1200: Ini akan menyambung kepada localhost di port UDP 1200.
  • -c Vultr: Ini adalah masyarakat yang akan menyertai. Semua bahagian dalam komuniti yang sama muncul di LAN yang sama (segmen rangkaian lapisan 2). Tepi yang tidak berada dalam komuniti yang sama tidak akan berkomunikasi antara satu sama lain.
  • -a 192.168.1.1: IP yang diberikan ke antara muka ini. Inilah alamat IP maya N2N yang dituntut.
  • -k mypassword: Kata laluan yang digunakan untuk setiap tepi. Semua bahagian yang berkomunikasi mesti menggunakan kunci dan nama komuniti yang sama.
  • -f: Menyahdayakan mod daemon dan menyebabkan tepi berjalan di latar depan. Ini diperlukan untuk fail perkhidmatan, jika systemctltidak, perkhidmatan tidak akan dimulakan.

Untuk memastikan semuanya berfungsi, mulakan perkhidmatan.

systemctl start n2n_edge

Kemudian, tanya status perkhidmatan.

systemctl status n2n_edge   

Output akan sama dengan yang berikut.

● 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

Jika kita menyemak 'ifconfig', anda akan melihat IP maya N2N yang dituntut oleh edge0antara muka.

ifconfig

Output akan sama dengan yang berikut.

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)

Setelah ini selesai, dayakan dan buat peraturan firewall. Pastikan untuk menggantikan node_miami_ipdan node_sydney_ipteks dengan IP awam contoh Sydney dan Miami. (Kami akan menggunakannya nanti).

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

Perkara terakhir yang perlu dilakukan dengan nod ini adalah untuk membolehkan kedua-dua perkhidmatan di boot.

systemctl enable n2n_supernode.service
systemctl enable n2n_edge.service

Pemasangan - Node Miami

Nod Miami akan menyambung ke nod super yang sedang berjalan di zon Paris. Untuk mencapai ini, kami hanya perlu membuat fail perkhidmatan untuk edgepermohonan itu.

Mulakan dengan membuat fail perkhidmatan kelebihan.

nano /etc/systemd/system/n2n_edge.service

Tambahkan kandungan berikut.

[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

Nota : Gantikan node_paris_ipdengan IP awam contoh yang berjalan di Paris

Ini akan menyambung ke simpul di Paris pada port UDP 1200, menyertai komuniti ' Vultr', menuntut IP 192.168.1.2dan mengesahkan dengan ' mypassword'.

Seterusnya, mulakan perkhidmatan.

systemctl start n2n_edge

Periksa status untuk menunjukkan bahawa perkhidmatan telah dimulakan dengan betul dan sedang berjalan.

systemctl status n2n_edge   

Seterusnya, pastikan edge0IP dituntut.

ifconfig

Ia akan menunjukkan 192.168.1.2alamat IP.

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)

Perkara seterusnya yang perlu dilakukan ialah mengaktifkan perkhidmatan semasa boot.

systemctl enable n2n_edge.service

Secara pilihan, dayakan firewall dan tambahkan peraturan SSH.

ufw allow 22/tcp
ufw enable

Sekarang kita akan dapat ping keduanya berjalan dalam keadaan kita.

Di Paris, ping contoh Vultr di Miami

ping 192.168.1.2

Di Miami, berada di pinggir bandar Paris

ping 192.168.1.1

Pemasangan - Node Sydney

Akhirnya, kami akan menambah benua terakhir kami kepada campuran: Australia. Mulakan sekali lagi dengan membuat perkhidmatan tepi, perkhidmatan tepi ini juga akan menyambung ke supernode yang dikonfigurasi sebelumnya di Paris.

nano /etc/systemd/system/n2n_edge.service

Tambahkan kandungan berikut.

[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

Catatan : Gantikan node_paris_ipdengan IP awam contoh yang dijalankan di Paris.

Ini akan menyambung ke simpul di Paris pada port UDP 1200, menyertai komuniti ' Vultr', menuntut IP 192.168.1.3dan mengesahkan dengan ' mypassword'.

systemctl start n2n_edge

Semak status untuk memastikan perkhidmatan bermula.

systemctl status n2n_edge   

Pastikan edge0IP dituntut.

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)

Sekali lagi, kembalikan perkhidmatan ini.

systemctl enable n2n_edge.service

Secara pilihan, dayakan firewall dan tambahkan peraturan SSH.

ufw allow 22/tcp
ufw enable

Sekarang kita akan dapat ping setiap contoh Vultr dari setiap nod.

ping 192.168.1.1
ping 192.168.1.2
ping 192.168.1.3

Sekiranya anda ingin menguji hubungan antara setiap tepi nod, membolehkan peraturan firewall mengenai keadaan Miami dan Paris. Ini akan membolehkan komunikasi antara tepi.

Di Miami, tambahkan peraturan berikut. (Pastikan penggantian node_paris_ipdan node_sydney_ipteks dengan IP umum mengenai keadaan Sydney dan Paris.)

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

Di Sydney, tambah peraturan berikut.

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

Sekarang anda boleh mematikan atau menghidupkan semula supernode. Sambungan rangkaian akan terus wujud. Hanya bahagian baru yang mengalami masalah penyambungan semasa perkhidmatan supernode tergendala.

Kesimpulannya

Kami berjaya mengkonfigurasi sambungan VPN antara beberapa zon. Ini semestinya menawarkan banyak kemungkinan baru untuk senario ketersediaan tinggi ke persekitaran kita yang baru dikonfigurasi.



Leave a Comment

Cara Memasang Platform Keranjang Belanja LiteCart di Ubuntu 16.04

Cara Memasang Platform Keranjang Belanja LiteCart di Ubuntu 16.04

LiteCart adalah platform keranjang belanja sumber terbuka dan bebas yang ditulis dalam PHP, jQuery, dan HTML 5. Ia adalah perisian elektronik e-dagang yang ringkas, ringan, dan mudah digunakan

Sediakan NFS Share di Debian

Sediakan NFS Share di Debian

NFS adalah sistem fail berasaskan rangkaian yang membolehkan komputer mengakses fail di seluruh rangkaian komputer. Panduan ini menerangkan bagaimana anda boleh mendedahkan folder di atas NF

Cara Memasang Matomo Analytics di Fedora 28

Cara Memasang Matomo Analytics di Fedora 28

Menggunakan Sistem Berbeza? Matomo (dahulunya Piwik) adalah platform analitik sumber terbuka, alternatif terbuka kepada Google Analytics. Sumber Matomo dihoskan o

Sediakan Pelayan TeamTalk di Linux

Sediakan Pelayan TeamTalk di Linux

TeamTalk adalah sistem persidangan yang membolehkan pengguna melakukan perbincangan audio / video berkualiti tinggi, sembang teks, memindahkan fail, dan berbagi layar. Ia i

Cara Pasang dan Konfigur CyberPanel pada Server CentOS 7 anda

Cara Pasang dan Konfigur CyberPanel pada Server CentOS 7 anda

Menggunakan Sistem Berbeza? Pengenalan CyberPanel adalah salah satu panel kawalan pertama di pasaran yang merupakan sumber terbuka dan menggunakan OpenLiteSpeed. Apa itu

Cara Memasang Apache Maven 3.5 di CentOS 7

Cara Memasang Apache Maven 3.5 di CentOS 7

Apache Maven adalah alat pengurusan projek perisian sumber terbuka dan bebas yang banyak digunakan untuk menyebarkan aplikasi berbasis Java. Prasyarat yang baru

Cara Memasang Backdrop CMS 1.8.0 pada VPS CentOS 7 LAMP

Cara Memasang Backdrop CMS 1.8.0 pada VPS CentOS 7 LAMP

Menggunakan Sistem Berbeza? Backdrop CMS 1.8.0 adalah Sistem Pengurusan Kandungan (CMS) sumber mudah alih, mudah alih, percuma dan terbuka yang membolehkan kami

Cara Mengakses VPS Vultr Anda

Cara Mengakses VPS Vultr Anda

Vultr menyediakan beberapa cara yang berbeza untuk mengakses VPS anda untuk mengkonfigurasi, memasang, dan menggunakan. Akses Kredensial Kelayakan akses lalai untuk VPS anda

Cara Membangun Brotli Dari Sumber di Ubuntu 18.04 LTS

Cara Membangun Brotli Dari Sumber di Ubuntu 18.04 LTS

Menggunakan Sistem Berbeza? Brotli adalah kaedah pemampatan baru dengan nisbah mampatan yang lebih baik daripada GZIP. Kod sumbernya dihoskan secara umum di Githu ini

Menggunakan Paparan MySQL pada Debian 7

Menggunakan Paparan MySQL pada Debian 7

Pengenalan MySQL mempunyai ciri hebat yang dikenali sebagai pandangan. Paparan adalah pertanyaan yang disimpan. Anggap mereka sebagai alias untuk pertanyaan yang panjang. Dalam panduan ini,

Cara Pasang AirSonic pada CentOS 7

Cara Pasang AirSonic pada CentOS 7

Menggunakan Sistem Berbeza? AirSonic adalah pelayan streaming media sumber terbuka dan terbuka. Dalam tutorial ini, saya akan membimbing anda melalui proses penyebaran a

Cara Pasang CD Strider pada Ubuntu 18.04

Cara Pasang CD Strider pada Ubuntu 18.04

Pengenalan CD Strider adalah platform penyebaran sumber terbuka berterusan. Aplikasi ini ditulis dalam Node.js dan menggunakan MongoDB sebagai backend penyimpanan. Selesaikan

Cara Memasang Subrion 4.1 CMS pada Ubuntu 16.04 LAMP VPS

Cara Memasang Subrion 4.1 CMS pada Ubuntu 16.04 LAMP VPS

Menggunakan Sistem Berbeza? Subrion 4.1 CMS adalah Sistem Pengurusan Kandungan sumber terbuka (CMS) yang kuat dan fleksibel yang membawa kandungan intuitif dan jelas

Cara Pasang DokuWiki pada Ubuntu 16.04 LTS

Cara Pasang DokuWiki pada Ubuntu 16.04 LTS

Menggunakan Sistem Berbeza? DokuWiki adalah program wiki sumber terbuka yang ditulis dalam PHP yang tidak memerlukan pangkalan data. Ia menyimpan data dalam fail teks. DokuWik

Siapkan Komposer Untuk Ketergantungan PHP Di CentOS 6

Siapkan Komposer Untuk Ketergantungan PHP Di CentOS 6

Pengenalan Komposer adalah pengurus pergantungan yang popular untuk PHP yang dapat mempermudah pemasangan dan kemas kini perpustakaan yang diperlukan untuk projek anda

Menyiapkan Chroot di Debian

Menyiapkan Chroot di Debian

Artikel ini akan mengajar anda cara menyediakan penjara chroot di Debian. Saya menganggap bahawa anda menggunakan Debian 7.x. Sekiranya anda menjalankan Debian 6 atau 8, ini mungkin berfungsi,

Cara Memasang PiVPN pada Debian

Cara Memasang PiVPN pada Debian

Pengenalan Cara mudah untuk menyediakan pelayan VPN di Debian adalah dengan PiVPN. PiVPN adalah pemasang dan pembungkus untuk OpenVPN. Ini membuat perintah mudah untuk anda

Cara Pasang Edisi Komuniti GitLab (CE) 11.x pada Debian 9

Cara Pasang Edisi Komuniti GitLab (CE) 11.x pada Debian 9

Menggunakan Sistem Berbeza? Sejak GitHub diambil alih oleh Microsoft, sebilangan besar pembangun telah merancang untuk memindahkan repositori kod mereka sendiri dari github.co

Pasang PBX dalam Flash 5 pada Debian 8

Pasang PBX dalam Flash 5 pada Debian 8

PBX In A Flash 5 (PIAF5) adalah sistem operasi berasaskan Debian 8 yang menjadikan Vultr VPS anda menjadi PBX lengkap. Ia mempunyai ciri-ciri berikut, dan banyak lagi.

Cara Pasang dan Konfigurasi CyberPanel pada Ubuntu 18.04 LTS

Cara Pasang dan Konfigurasi CyberPanel pada Ubuntu 18.04 LTS

Menggunakan Sistem Berbeza? Pengenalan CyberPanel adalah salah satu panel kawalan pertama di pasaran yang merupakan sumber terbuka dan menggunakan OpenLiteSpeed. Apa itu

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

6 Perkara Yang Sangat Menggila Tentang Nintendo Switch

Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.

Janji Teknologi Yang Masih Tidak Ditepati

Janji Teknologi Yang Masih Tidak Ditepati

Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.

Fungsi Lapisan Seni Bina Rujukan Data Besar

Fungsi Lapisan Seni Bina Rujukan Data Besar

Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Bagaimana AI Boleh Mengambil Automasi Proses ke Tahap Seterusnya?

Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA: Berapa Lama Ia Boleh Kekal Sebagai Teknik Berdaya maju Untuk Perbezaan Manusia-AI?

CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Keunikan Teknologi: Masa Depan Tamadun Manusia yang Jauh?

Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Teleperubatan Dan Penjagaan Kesihatan Jauh: Masa Depan Ada Di Sini

Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Pernahkah Anda Terfikir Bagaimana Penggodam Mendapatkan Wang?

Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Kemas Kini Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Isu Daripada Penyelesaian

Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut