N2N ile Çoklu Vultr Bölgeleri Bağlama

N2N açık kaynaklı bir katman 2/3 VPN uygulamasıdır. Diğer birçok VPN programından farklı olarak N2N, bir NAT yönlendiricinin arkasında bulunan bilgisayarları bağlayabilir. Bu, ESP protokolü (ipsec tarafından kullanılan) gibi özel protokollere güvenmek zorunda kalmadan bir bulut ortamına bağlanmak için büyük bir avantaj sunar. Bu bağlantıyı elde etmek için, N2N, bilgiyi NAT'ed düğümleri arasında yönlendirebilen bir süpernode kullanır. Bu VPN bağlantısı, bölgeler arasında birden çok Vultr örneğini birbirine bağlamak için kullanılabilir.

Ön şartlar

Bu örnekte, birden fazla bölgede üç düğüm kullanacağız:

  • Paris
  • Miami
  • Sidney

Yazılımın kurulumu

Her örnek için aşağıdaki komutlar yürütülür.

En yeni kaynak kodundan inşa edeceğimiz build-essentialiçin repo'dan ve ayrıca kurarak başlayın libssl-dev.

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

Ardından, github'dan kaynak kodunu indirin.

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

Tüm ikili dosyaları derleyin.

cd n2n 
make
make install

make installKomut yaratmış olursunuz supernodeve edgede ikilileri /usr/sbindizininde. Dosyaları temizleyerek bitirin.

rm -rf /tmp/n2n

Kurulum - Node Paris

İlk düğüm sözde süpernodumuz olacak. Bu supernode, UDP bağlantı noktasını dinleyecek supernode hizmetini başlatacak 1200. Varsayılan olarak N2N uygulaması bir hizmet dosyası oluşturmaz. Bu yüzden kendimizi sağlamamız gerekecek.

'N2n_supernode' hizmet dosyasını oluşturun:

nano /etc/systemd/system/n2n_supernode.service

Aşağıdaki içeriği ekleyin:

[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' yönergesi UDP bağlantı noktasını tanımlar 1200. Burası süpernodun dinleyeceği liman. Her şeyin çalıştığından emin olmak için supernode hizmetini başlatın:

systemctl start n2n_supernode

Supernode'in durumunu kontrol edin.

systemctl status n2n_supernode

Bu aşağıdakine benzer bir durum gösterecektir.

● 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

Sonra edge hizmetini yaratacağız. Bu kenar hizmeti, diğer Vultr bölgelerindeki diğer kenarlar arasındaki iletişim için özel bir IP talep edecektir.

Supernode hizmetinde olduğu gibi, bunun da kendi servis dosyasına ihtiyacı olacaktır.

nano /etc/systemd/system/n2n_edge.service

Aşağıdaki içeriği ekleyin:

[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

Bu hizmet dosyasında aşağıdaki komut satırı seçeneklerini tanımladık:

  • -l localhost:1200: Bu, UDP bağlantı noktasındaki localhost'a bağlanır 1200.
  • -c Vultr: Bu, sınırın katılacağı topluluk. Aynı topluluk içindeki tüm kenarlar aynı LAN'da (katman 2 ağ kesimi) görünür. Aynı toplulukta olmayan kenarlar birbirleriyle iletişim kuramaz.
  • -a 192.168.1.1: Bu arayüze atanan IP. Bu, talep edilen N2N sanal LAN IP adresidir.
  • -k mypassword: Her kenar için kullanılan parola. İletişim kuran tüm kenarlar aynı anahtar ve topluluk adını kullanmalıdır.
  • -f: Arka plan modunu devre dışı bırakır ve kenarın ön planda çalışmasına neden olur. Bu hizmet dosyası için gereklidir, aksi takdirde systemctlhizmeti başlatmaz.

Her şeyin çalıştığından emin olmak için hizmeti başlatın.

systemctl start n2n_edge

Ardından, hizmet durumunu sorgulayın.

systemctl status n2n_edge   

Çıktı aşağıdakine benzer olacaktır.

● 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

'İfconfig' seçeneğini işaretlersek, N2N sanal IP'sinin edge0arabirim tarafından talep edildiğini görürsünüz .

ifconfig

Çıktı aşağıdakine benzer olacaktır.

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)

Bu yapıldıktan sonra, güvenlik duvarı kurallarını etkinleştirin ve oluşturun. node_miami_ipVe node_sydney_ipmetni Sydney ve Miami örneğinin genel IP'si ile değiştirdiğinizden emin olun . (Bunları daha sonra kullanacağız).

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

Bu düğümle yapılacak son şey, her iki hizmeti de önyüklemede etkinleştirmektir.

systemctl enable n2n_supernode.service
systemctl enable n2n_edge.service

Kurulum - Node Miami

Miami düğümü, şu anda Paris bölgesinde çalışan süper düğüme bağlanacak. Bunu başarmak için sadece edgeuygulama için bir hizmet dosyası oluşturmanız gerekir .

Bir kenar hizmet dosyası oluşturarak başlayın.

nano /etc/systemd/system/n2n_edge.service

Aşağıdaki içeriği ekleyin.

[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

Not : Paris'te çalışan örneğin genel IP'si ile değiştirin.node_paris_ip

Bu, Paris'teki düğüme UDP bağlantı noktasında bağlanır 1200, topluluğa katıl ' Vultr', IP talep eder 192.168.1.2ve ' mypassword' ile kimlik doğrulaması yapar .

Ardından, hizmeti başlatın.

systemctl start n2n_edge

Hizmetin doğru başlatıldığını ve çalıştığını gösteren bir gösterge olup olmadığını kontrol edin.

systemctl status n2n_edge   

Ardından, edge0IP'nin talep edildiğinden emin olun .

ifconfig

192.168.1.2IP adresini gösterecektir .

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)

Yapılacak sonraki şey, hizmeti önyüklemede etkinleştirmektir.

systemctl enable n2n_edge.service

İsteğe bağlı olarak, güvenlik duvarını etkinleştirin ve SSH kurallarını ekleyin.

ufw allow 22/tcp
ufw enable

Artık örneklerde çalışan her iki kenara da ping atabileceğiz.

Paris'te, Miami'deki Vultr örneğine ping atın

ping 192.168.1.2

Miami'de, Paris'te uçurum

ping 192.168.1.1

Kurulum - Düğüm Sidney

Son olarak, son kıtamızı karışıma ekleyeceğiz: Avustralya. Bir kenar hizmeti oluşturarak yeniden başlayın, bu kenar hizmeti Paris'te önceki yapılandırılmış süpernoda da bağlanacaktır.

nano /etc/systemd/system/n2n_edge.service

Aşağıdaki içeriği ekleyin.

[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

Not : anahtarını node_paris_ipParis'te çalışan örneğin genel IP'si ile değiştirin .

Bu, Paris'teki düğüme UDP bağlantı noktasında bağlanır 1200, topluluğa katıl ' Vultr', IP talep eder 192.168.1.3ve ' mypassword' ile kimlik doğrulaması yapar .

systemctl start n2n_edge

Hizmetin başlatıldığından emin olmak için durumu kontrol edin.

systemctl status n2n_edge   

edge0IP'nin talep edildiğinden emin olun .

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)

Yine, bu hizmeti önyüklemede etkinleştirin.

systemctl enable n2n_edge.service

İsteğe bağlı olarak, güvenlik duvarını etkinleştirin ve SSH kurallarını ekleyin.

ufw allow 22/tcp
ufw enable

Artık her düğümden her Vultr örneğine ping atabileceğiz.

ping 192.168.1.1
ping 192.168.1.2
ping 192.168.1.3

Her bir düğüm kenarı arasındaki bağlantıyı test etmek istiyorsanız, Miami ve Paris örneklerindeki güvenlik duvarı kurallarını etkinleştirin. Bu, kenarlar arasındaki iletişime izin verecektir.

Miami'de aşağıdaki kuralları ekleyin. ( node_paris_ipVe node_sydney_ipmetnini Sydney ve Paris örneklerinin genel IP'leriyle değiştirdiğinizden emin olun .)

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

Sydney'de aşağıdaki kuralları ekleyin.

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

Şimdi süpernodu kapatabilir veya yeniden başlatabilirsiniz. Ağ bağlantıları devam edecektir. Supernode hizmeti kapalıyken yalnızca yeni kenarlar bağlantı sorunları yaşayacaktır.

Sonuç

Birden çok bölge arasında bir VPN bağlantısını başarıyla yapılandırdık. Bu, yeni yapılandırılmış çevremize yüksek kullanılabilirlik senaryoları için oldukça fazla yeni olasılık sunmalıdır.



Leave a Comment

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Nintendo Switch Hakkında Son Derece Çılgın 6 Şey

Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.

Hala Teslim Edilmeyen Teknoloji Sözleri

Hala Teslim Edilmeyen Teknoloji Sözleri

Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Referans Mimarisi Katmanlarının İşlevleri

Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zeka Süreç Otomasyonunu Nasıl Bir Sonraki Seviyeye Taşıyabilir?

Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA: İnsan-AI Ayrımı İçin Ne Kadar Geçerli Bir Teknik Kalabilir?

CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Teknolojik Tekillik: İnsan Uygarlığının Uzak Bir Geleceği mi?

Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp ve Uzaktan Sağlık Hizmeti: Gelecek Burada

Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Hackerların Nasıl Para Kazandığını Hiç Merak Ettiniz mi?

Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

macOS Catalina 10.15.4 Ek Güncellemesi Çözmekten Daha Fazla Soruna Neden Oluyor

Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun