SSD Nodes Learn Hosting plans →
Panduan Matt ConnorOleh Matt Connor · Dikemas kini 2026-08-29

Cara Host Sendiri NetBird VPN Server di VPS

Panduan lengkap pasang NetBird VPN pada VPS anda. Ketahui cara konfigurasi DNS, TLS, skrip quickstart, setup keys untuk peer tanpa pengawasan serta perbandingan dengan Headscale.

Kelebihan mengendalikan sendiri pelayan VPN NetBird

Mengendalikan sendiri pelayan VPN NetBird meletakkan control plane pada VPS milik anda: bahagian yang menyimpan senarai peer, menentukan mesin mana yang boleh mencapai mesin lain, dan membantu dua peer mencari satu sama lain di sebalik NAT (network address translation). Terowong itu sendiri masih menggunakan WireGuard, yang disulitkan secara terus antara mesin anda. Perubahannya ialah tiada syarikat luar yang memegang inventori peranti atau aliran log masuk anda. Fahami dengan jelas apa yang anda peroleh, kerana control plane yang dihoskan juga tidak pernah memegang kunci yang menyulitkan trafik anda, dan apa yang boleh dilakukan oleh coordination server jika ia diceroboh adalah senarai yang lebih terhad daripada jangkaan kebanyakan orang sebelum mereka membacanya.

NetBird berada di antara dua perkara yang mungkin anda sudah ketahui. Ia adalah mesh overlay, jadi peer berhubung antara satu sama lain dan bukannya menghantar segala-galanya melalui satu gateway. Ia juga boleh dihoskan sendiri sepenuhnya, yang meletakkannya sebagai pesaing kepada Headscale, pelayan kawalan Tailscale yang dihoskan sendiri. Jika anda hanya pernah menjalankan terowong gateway tunggal, baca perbezaan antara WireGuard biasa dan mesh overlay terlebih dahulu, kerana model mental itulah yang menjadikan bahagian lain halaman ini berguna.

Jika apa yang anda sebenarnya perlukan ialah satu pelayan yang menjadi laluan keluar bagi semua trafik anda, mesh adalah lebih kompleks daripada yang diperlukan. VPN WireGuard biasa pada satu VPS atau exit node Tailscale melakukan perkara itu dengan usaha yang jauh lebih sedikit. Dan jika matlamatnya adalah untuk mencapai satu rangkaian peribadi dan bukannya menghubungkan mesin antara satu sama lain, subnet router Tailscale pada VPS mengiklankan julat tersebut kepada tailnet yang anda sudah miliki tanpa memerlukan keseluruhan stack di bawah.

Perkara yang sebenarnya dijalankan oleh stack

Susun atur ini telah berubah baru-baru ini, dan kebanyakan penulisan lama menerangkan susun atur yang terdahulu. Setakat Ogos 2026, pada keluaran v0.76.2, skrip quickstart menulis fail Compose dengan tiga servis secara lalai.

  • netbird-server membawa API pengurusan, servis isyarat, relay dengan pendengar STUN terbenam, dan pembekal identiti terbenam. Dalam keluaran lama, komponen ini adalah kontena berasingan dan pembekal identiti merupakan pemasangan Zitadel berasingan yang perlu anda bina terlebih dahulu.
  • dashboard ialah konsol web pentadbir.
  • traefik menamatkan TLS (transport layer security) dan meminta sijil daripada Let's Encrypt pada permulaan pertama.

Dua lagi servis wujud dan kekal dimatikan kecuali anda menyatakan ya pada gesaan. Servis NetBird Proxy menerbitkan servis dalaman pada hostname awam. CrowdSec menapis trafik yang bersifat penyalahgunaan. Kedua-duanya tidak diperlukan untuk membina mesh yang berfungsi, dan kedua-duanya menggunakan memori pada mesin kecil.

Jika anda datang daripada wg-easy dalam satu kontena Docker, ini merupakan peningkatan dalam jumlah bahagian. Apa yang anda peroleh ialah polisi akses dan akaun bagi setiap pengguna, serta peer yang bersambung terus antara satu sama lain dan bukannya melalui satu gateway.

Perkara yang diperlukan sebelum bermula

Nama domain awam adalah wajib. Papan pemuka, API dan relay semuanya menggunakan HTTPS pada port 443, dan Traefik mendapatkan sijil daripada Let's Encrypt menggunakan HTTP challenge, yang memerlukan nama yang dapat diselesaikan (resolve) kepada VPS ini daripada internet awam. Alamat IP sahaja tidak akan berfungsi dalam aliran ini.

Cipta satu rekod A, netbird.example.com yang menghala ke alamat IPv4 awam VPS, dan tunggu sehingga ia aktif sebelum menjalankan sebarang arahan.

dig +short netbird.example.com

Arahan tersebut mesti memaparkan alamat pelayan anda. Menjalankan pemasang sebelum DNS tersebar (propagate) akan menyebabkan permintaan sijil gagal pada permulaan pertama, dan percubaan pengesahan yang gagal berulang kali akan terkena had kadar (rate limits) Let's Encrypt, yang memaksa anda menunggu selama satu jam untuk mencuba semula.

Tiga port mesti boleh dicapai daripada internet: TCP 80 untuk cabaran sijil dan redirect ke HTTPS, TCP 443 untuk papan pemuka, API, isyarat dan trafik relay, serta UDP 3478 untuk STUN.

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 3478/udp
sudo ufw reload
sudo ufw status

Buka port tersebut pada firewall rangkaian pembekal anda juga. Ini merupakan kawalan berasingan dalam kebanyakan panel VPS, dan ia adalah sebab mengapa pelayan yang konfigurasi ufw status-nya kelihatan betul masih menolak sambungan.

STUN (session traversal utilities for NAT) ialah cara peer mengetahui alamat awam dan port yang diberikan oleh NAT sendiri, supaya dua peer boleh cuba membina terowong terus. Jika UDP 3478 disekat, peer masih boleh bersambung melalui relay pada TCP 443, jadi tiada apa yang kelihatan rosak. Anda sebaliknya akan mendapat Connection type: Relayed pada setiap peer, dan semua trafik akan melalui VPS anda dan bukannya terus antara peer.

Dari segi perisian, anda memerlukan Docker dengan pemalam Compose v2, serta jq dan curl. Skrip akan menyemak kesemuanya dan berhenti jika salah satu daripadanya tiada. Jika Docker baru dipasang pada pelayan ini, pastikan Docker Compose berfungsi pada VPS terlebih dahulu.

Port jika anda melangkau reverse proxy yang disertakan

Menjalankan sistem tanpa Traefik bermakna servis individu didedahkan secara terus, dan senarai port akan bertambah:

  • TCP 80, redirect HTTP
  • TCP 443, HTTPS
  • TCP 33073, pengurusan gRPC
  • TCP 10000, isyarat gRPC
  • TCP 33080, relay melalui WebSocket atau QUIC
  • UDP 3478, STUN

Pilih cara ini hanya jika pelayan tersebut sudah mengendalikan TLS untuk tujuan lain. Jika tidak, Traefik yang disertakan adalah lebih mudah kerana memerlukan peraturan yang lebih sedikit dan mengurangkan risiko kesilapan.

Memasang pelayan NetBird dengan skrip quickstart

Satu baris arahan yang didokumentasikan menyalurkan keluaran (release) terkini terus ke dalam shell:

curl -fsSL https://github.com/netbirdio/netbird/releases/latest/download/getting-started.sh | bash

Sebaliknya, tetapkan versi (pin) skrip tersebut. latest sentiasa berubah, jadi arahan yang sama dijalankan dalam selang dua minggu akan menghasilkan dua pemasangan yang berbeza, dan tiada rekod pada cakera yang mencatatkan versi mana yang menulis konfigurasi anda. Muat turun keluaran yang bertanda (tagged release), baca kandungannya, kemudian jalankannya.

mkdir -p ~/netbird
cd ~/netbird
curl -fsSL -o getting-started.sh \
  https://github.com/netbirdio/netbird/releases/download/v0.76.2/getting-started.sh
less getting-started.sh
bash getting-started.sh

Skrip tersebut akan meminta domain terlebih dahulu:

Enter the domain you want to use for NetBird (e.g. netbird.my-domain.com):

Kemudian ia bertanya bagaimana TLS akan dikendalikan:

Which reverse proxy will you use?
  [0] Traefik (recommended - automatic TLS, included in Docker Compose)
  [1] Existing Traefik (labels for external Traefik instance)
  [2] Nginx (generates config template)
  [3] Nginx Proxy Manager (generates config + instructions)
  [4] External Caddy (generates Caddyfile snippet)
  [5] Other/Manual (displays setup documentation)
Enter choice [0-5] (default: 0):

Pilih [0]. Pilihan 2 hingga 5 akan menulis cebisan konfigurasi dan menyerahkan urusan penyambungan kepada anda; ini adalah tindakan yang betul pada pelayan yang sudah menjalankan proksi, tetapi salah pada pelayan yang baharu. Pilihan 0 kemudian akan meminta alamat e-mel Let's Encrypt, yang digunakan untuk notis tamat tempoh sijil.

Pilih tidak (no) untuk perkhidmatan NetBird Proxy pada pemasangan pertama. Ia memerlukan dua lagi rekod DNS, proxy.netbird.example.com dan wildcard *.proxy.netbird.example.com, dan ia tidak memberikan sebarang fungsi untuk mesh biasa. Pilih tidak juga untuk CrowdSec. Kedua-duanya boleh ditambah kemudian.

Skrip tersebut menulis ke dalam direktori semasa: docker-compose.yml, config.yaml dengan mod 600, dashboard.env, dan traefik-dynamic.yaml apabila anda memilih Traefik yang dibundelkan. Anggap direktori tersebut sebagai keadaan (state) yang perlu anda simpan, kerana config.yaml menyimpan kunci yang menyulitkan data di dalam storan. Kehilangannya tidak boleh diperbaiki dengan pemasangan semula.

docker compose ps
docker compose logs -f netbird-server

Setiap perkhidmatan sepatutnya membaca running, dan log pelayan sepatutnya stabil dan bukannya memulakan semula secara berulang (loop). Pantau sijil secara berasingan:

docker compose logs traefik | grep -i acme

ACME (automatic certificate management environment) ialah protokol yang digunakan oleh Traefik untuk mendapatkan sijil. Ralat di sini hampir selalu berpunca daripada DNS atau port 80 yang tertutup.

Cipta akaun pentadbir pertama

Buka https://netbird.example.com. Pada pemasangan baharu, anda akan dibawa ke halaman persediaan dan bukannya borang log masuk. Masukkan alamat e-mel, nama dan kata laluan, kemudian klik Create Account. Akaun tersebut akan menjadi pentadbir pertama, dan halaman akan mengubah hala ke borang log masuk.

Akaun itu disimpan dalam stor pengguna NetBird sendiri, yang dikuasakan oleh penyedia identiti yang terbenam di dalam kontena netbird-server. Tiada perkhidmatan luaran yang terlibat. Ini merupakan perubahan terbesar berbanding NetBird yang dihoskan sendiri setahun yang lalu, di mana pemasangan yang berfungsi memerlukan anda menyediakan Zitadel atau Keycloak terlebih dahulu dan menyalin empat nilai OIDC (OpenID Connect) ke dalam setup.env sebelum sebarang proses boleh bermula.

Jika anda menerima amaran sijil pelayar dan bukannya halaman persediaan, bermakna sijil tersebut tidak dikeluarkan. Selesaikan masalah itu sebelum meneruskan langkah seterusnya, kerana papan pemuka berkomunikasi dengan API melalui nama hos yang sama dan akan gagal dengan cara yang mengelirukan jika sijil tersebut tidak sah.

Sertai peer pertama anda

Pasang klien pada mana-mana mesin Linux, termasuk VPS itu sendiri jika anda mahu ia berada dalam mesh:

curl -fsSL https://pkgs.netbird.io/install.sh | sh

Pada Debian dan Ubuntu, skrip tersebut mengkonfigurasi repositori pakej NetBird dan kemudian memasang klien melalui apt, jadi pengurus pakej akan menguruskan pemasangan tersebut. Jika anda tidak selesa menyalurkan skrip terus ke shell, simpan dahulu dengan curl -fsSL -o install.sh https://pkgs.netbird.io/install.sh dan baca kandungannya sebelum menjalankan sh install.sh. Walau apa pun, sahkan apa yang telah dipasang:

apt-cache policy netbird

netbird ialah klien baris perintah dan daemon. netbird-ui ialah aplikasi dulang desktop, dan pelayan tanpa kepala (headless server) tidak memerlukannya.

Sekarang, halakan klien ke pelayan anda:

sudo netbird up --management-url https://netbird.example.com

Jangan abaikan --management-url, jika tidak klien akan mendaftar dengan perkhidmatan hos NetBird, kerana itu adalah tetapan lalai yang dikompilasi. Perintah tersebut masih berjaya, mesin masih mendapat alamat, tetapi papan pemuka (dashboard) yang anda hos sendiri akan kekal kosong. Ini adalah kesilapan yang sering dilakukan oleh hampir semua orang.

Perintah tersebut akan memaparkan URL untuk dibuka dalam pelayar bagi melengkapkan log masuk. Selepas itu:

netbird status
ip addr show wt0

Baca empat baris daripada netbird status: Management: Connected, Signal: Connected, baris Relays: yang melaporkan setiap relay yang tersedia, dan NetBird IP: dalam julat overlay. wt0 ialah antara muka WireGuard yang dicipta oleh NetBird, dan ia sepatutnya membawa alamat yang sama.

Menyertai mesin kedua secara tanpa pengawasan dengan kunci persediaan

Log masuk pelayar tidak berfungsi untuk mesin yang tiada pelayar dan tiada pengguna di hadapannya. Kunci persediaan (setup key) ialah token pra-pengesahan yang mendaftarkan mesin tanpa langkah interaktif. Cipta kunci tersebut dalam papan pemuka di bawah Setup Keys.

Terdapat dua jenis kunci. Kunci sekali guna mengesahkan tepat satu mesin dan kemudian luput. Kunci boleh guna semula mendaftarkan banyak mesin, dengan had bilangan yang boleh ditetapkan. Kedua-duanya memerlukan tempoh luput, dan kedua-duanya boleh menetapkan peer baharu secara automatik ke dalam kumpulan, supaya peraturan akses pada kumpulan tersebut terpakai sebaik sahaja mesin itu muncul.

sudo netbird up --setup-key <SETUP-KEY> \
  --management-url https://netbird.example.com \
  --hostname build-runner-01

--hostname menetapkan nama yang dipaparkan dalam papan pemuka. Tanpanya, peer akan menggunakan nama mesin itu sendiri, dan sekumpulan entri yang semuanya bernama ubuntu tidak membantu sesiapa pun.

Untuk kontena dan ejen binaan jangka hayat pendek, tandakan kunci sebagai ephemeral semasa anda menciptanya. Peer yang didaftarkan dengan kunci ephemeral akan dialih keluar secara automatik sebaik sahaja ia berada di luar talian selama lebih daripada 10 minit, yang memastikan entri mati tidak terkumpul dalam senarai peer.

Satu had yang perlu difahami sebelum anda merancang menggunakan kunci persediaan: meluputkan atau memadamkan kunci akan menghentikan pendaftaran baharu, namun ia tidak memutuskan sambungan mesin yang telah pun berdaftar dengannya. Mengalih keluar akses mesin bermakna mengalih keluar peer tersebut.

Adakah anda masih memerlukan penyedia identiti yang berasingan?

Untuk pemasangan berskala kecil, jawapannya tidak. Storan pengguna terbina dalam mengurus akaun yang dicipta daripada papan pemuka, dan ini sudah memadai untuk sebilangan kecil pengguna.

Anda memerlukan penyedia identiti luaran apabila anda sudah memilikinya dan tidak mahu menguruskan senarai pengguna kedua. NetBird menerima mana-mana penyedia yang menyokong OIDC. Daftarkan klien OIDC sulit dalam penyedia anda, kemudian tambahkannya dalam papan pemuka NetBird dengan empat nilai: nama, client ID, client secret dan issuer. NetBird akan memberikan anda URL ubah hala (redirect URL) untuk ditampal semula ke dalam penyedia tersebut. Integrasi khusus tersedia untuk Google, Microsoft Entra ID, Okta, Zitadel, Keycloak, Authentik dan Pocket ID, manakala perkhidmatan lain boleh dimasukkan sebagai OIDC generik. Jika anda sudah menjalankan Authentik sebagai single sign-on yang dihoskan sendiri, ini adalah laluan yang mengekalkan satu senarai akaun dan bukannya dua.

Log masuk tempatan kekal tersedia selepas anda menambah penyedia, dan setiap penyedia yang dikonfigurasikan akan muncul pada halaman log masuk. Kekalkan satu akaun pentadbir tempatan dengan kata laluan yang kuat. Konfigurasi OIDC yang rosak tidak akan menghalang anda daripada mengakses sistem.

NetBird atau Headscale: control plane yang manakah patut anda jalankan?

Kedua-duanya membuang dependency yang sama, iaitu pelayan kawalan (control server) berpusat yang biasanya dihubungi oleh klien anda. Projek ini mempunyai bentuk yang berbeza.

Headscale melaksanakan semula control server Tailscale, dan anda terus menggunakan klien rasmi Tailscale. Tiada konsol web rasmi. Anda mengurus pengguna dan pre-authentication keys dengan arahan headscale terhadap fail konfigurasi. Antara muka web komuniti memang wujud, namun ia bukan sebahagian daripada projek tersebut. Ini sesuai bagi mereka yang mahukan status dalam fail dan perubahan mereka dalam kawalan versi (version control).

NetBird membekalkan keseluruhan produk: kliennya sendiri, papan pemuka (dashboard) sendiri, penyedia identiti terbenam, dan polisi akses yang disunting melalui pelayar web. Ini bermakna lebih banyak komponen yang perlu diurus pada VPS anda, namun ia jauh lebih mudah untuk diserahkan kepada rakan sekerja yang tidak akan membuka terminal.

Jalankan Headscale jika anda sudah melabur dalam klien Tailscale atau anda mahukan control plane yang paling kecil. Jalankan NetBird jika beberapa orang perlu mengurus peer dan anda mahukan konsol serta SSO tanpa perlu membina satu sistem sendiri. Sebelum anda memilih salah satu, semak apa yang sebenarnya dilindungi oleh pelan percuma Tailscale, kerana kumpulan yang mempunyai enam pengguna atau kurang dengan peranti tanpa had tidak perlu membayar untuk control plane berpusat dan mungkin tidak mempunyai sebab untuk menjalankannya sendiri. Melepasi had tersebut, bil akan meningkat mengikut bilangan orang dan bukannya bilangan mesin, jadi mengira jumlah caj Tailscale untuk kumpulan anda memberikan anda angka untuk dipertimbangkan berbanding kos VPS dan masa yang diperlukan untuk mengurus stack ini.

Berapa kecil saiz VPS yang boleh menjalankan ini?

Keperluan minimum yang didokumentasikan ialah 1 CPU dan 2 GB memori. Nota NetBird sendiri meletakkan had minimum semasa hampir kepada 1 GB RAM memandangkan pengurusan pengguna kini bersifat setempat, berbanding 2 GB hingga 4 GB yang diperlukan oleh susun atur lama apabila penggunaan penuh Zitadel menjadi sebahagian daripada tindanan tersebut. Beli 2 GB. Ruang tambahan itulah yang membolehkan naik taraf menarik imej baharu sementara imej lama masih berada pada cakera.

Tiga perkara selamat untuk ditinggalkan pada kotak kecil. Tolak perkhidmatan NetBird Proxy, yang wujud untuk menerbitkan perkhidmatan dalaman pada hostname awam dan tiada kaitan dengan rakan setara (peers) yang bersambung. Tolak CrowdSec, yang lebih berbaloi ditambah pada kotak yang terdedah kemudian hari berbanding pada hari pertama. Kekalkan storan SQLite lalai dalam volum netbird_data, dan beralih kepada PostgreSQL hanya apabila anda memisahkan penggunaan merentasi mesin atau mencapai konkurensi sebenar, yang didokumentasikan sebagai migrasi yang boleh anda lakukan kemudian.

Relay ialah satu-satunya komponen yang anda tidak boleh gugurkan. Dua rakan setara yang NAT-nya menetapkan port berbeza bagi setiap destinasi tidak akan dapat mewujudkan terowong terus, jadi relay adalah satu-satunya laluan yang membolehkan mereka berfungsi sama sekali. Melumpuhkannya hanya menjimatkan sedikit memori dan memutuskan sambungan dengan cara yang sukar dikesan.

Apabila satu kotak tidak lagi mencukupi, relay adalah perkara pertama yang perlu dipindahkan daripadanya. Relay kendiri berjalan dengan NB_LISTEN_ADDRESS, NB_EXPOSED_ADDRESS, NB_AUTH_SECRET dan NB_ENABLE_STUN. Rahsia kongsi (shared secret) mestilah sama pada relay dan pada pelayan utama, atau klien akan gagal untuk mengesahkan diri kepadanya.

Mod kegagalan dan perkara yang akan anda lihat

Papan pemuka menunjukkan amaran sijil. Traefik gagal mendapatkan sijil. Jalankan docker compose logs traefik | grep -i acme. Terdapat dua punca. Sama ada dig +short netbird.example.com belum lagi menghalakan ke VPS ini, atau port TCP 80 ditutup di suatu tempat antara Let's Encrypt dan kontena, biasanya pada firewall rangkaian pembekal dan bukannya pada ufw. Selesaikan punca masalah sebelum mencuba semula secara berulang, kerana pengesahan yang gagal dihadkan kadarnya dan anda akan disekat daripada mencuba semula selama satu jam.

Pelanggan menyatakan ia telah bersambung tetapi papan pemuka kosong. Pelanggan mendaftar dengan perkhidmatan hos NetBird kerana --management-url tiada. Jalankan netbird status --detail dan baca baris Management:, yang menamakan pelayan yang sebenarnya dihubungi oleh pelanggan. Jika anda melihat Management: Connected to https://api.netbird.io:443, ini bermakna ia pergi ke awan. Jalankan sudo netbird down, kemudian sudo netbird up --management-url https://netbird.example.com semula.

Setiap peer menunjukkan Connection type: Relayed. Tiada terowong terus terbentuk, jadi semua trafik melintasi VPS anda dan menambah satu hop kependaman. Periksa port UDP 3478 pada firewall VPS dan firewall pembekal, kerana STUN adalah mekanisme yang membolehkan peer mengetahui alamat awam dan portnya sendiri. netbird status --detail juga mencetak Direct: false serta jenis calon ICE (interactive connectivity establishment) bagi setiap peer, yang menunjukkan sejauh mana percubaan tersebut berjaya. Pada sesetengah rangkaian, relayed adalah satu-satunya hasil yang tersedia dan tiada apa yang salah.

Peer menyertai tetapi tidak dapat mencapai apa-apa. Berada dalam mesh tidak bermakna dua peer boleh berkomunikasi. Dasar akses (access policies) yang menentukan perkara tersebut, dan kumpulan tanpa dasar yang dilampirkan tidak akan mencapai apa-apa. Periksa dasar dalam papan pemuka sebelum anda mula menyahpepijat laluan dan firewall.

netbird status melaporkan masalah daemon. Perkhidmatan tidak berjalan. Gunakan sudo netbird service status dan sudo netbird service start. Log pelanggan berada di /var/log/netbird/client.log. Untuk sebarang masalah yang tidak dapat dikenal pasti, netbird debug bundle --anonymize --system-info akan mengumpul log, status, laluan, tetapan DNS dan keadaan firewall ke dalam satu arkib.

Sandaran dan naik taraf

Dua perkara merangkumi keseluruhan pemasangan: direktori yang menyimpan docker-compose.yml dan config.yaml, serta Docker volume yang menyimpan pangkalan data dan kunci penyulitan. Lakukan sandaran untuk kedua-duanya secara serentak. config.yaml menyimpan kunci yang menyulitkan data di dalam storan, jadi salinan pangkalan data tanpa kunci tersebut akan menghasilkan data yang tidak boleh dibaca apabila dipulihkan.

docker volume ls
docker compose down
sudo tar czf netbird-config.tgz -C ~ netbird
docker run --rm -v netbird_netbird_data:/data -v "$PWD":/backup \
  alpine tar czf /backup/netbird-data.tgz -C /data .
docker compose up -d

Compose meletakkan awalan nama direktori projek pada nama volume, jadi volume yang didokumentasikan sebagai netbird_data biasanya muncul sebagai netbird_netbird_data. Jalankan docker volume ls terlebih dahulu dan gunakan nama yang dipaparkan, atau docker run di atas akan gagal dengan mencipta volume kosong secara senyap dan tidak mengarkibkan apa-apa. Simpan arkib di luar VPS. Jika anda sudah mempunyai alat sandaran, restic atau BorgBackup boleh mengendalikan bahagian luar tapak (offsite).

Naik taraf pelayan dilakukan dengan menarik imej baharu dan mencipta semula bekas:

docker compose pull
docker compose up -d
docker compose ps

Sebelum anda bergantung pada langkah tersebut, jalankan docker compose config | grep image:. Sebarang tag yang membaca latest harus ditetapkan kepada versi tertentu, atas sebab yang sama anda menetapkan skrip pemasangan: anda perlu tahu apa yang sedang berjalan, dan anda memerlukan versi untuk kembali semula apabila naik taraf tidak berfungsi dengan betul. Pelanggan melakukan naik taraf melalui pengurus pakej yang digunakan semasa pemasangan.

FAQ

Adakah saya memerlukan penyedia identiti sendiri untuk mengehoskan NetBird secara kendiri?

Tidak. Keluaran semasa menyertakan stor pengguna terbina dalam, jadi anda boleh mencipta akaun pentadbir pertama dalam pelayar di https://netbird.example.com dan menambah pengguna daripada papan pemuka selepas itu. Penyedia OIDC luaran adalah pilihan dan boleh ditambah kemudian dengan empat nilai: nama, client ID, client secret dan issuer. Panduan yang menyarankan anda untuk menggunakan Zitadel atau Keycloak sebelum NetBird menerangkan persediaan yang tidak lagi diperlukan, dan mengikutinya akan menyebabkan anda perlu menjalankan satu servis tambahan yang tidak perlu.

Mengapa semua peer saya menunjukkan Connection type: Relayed?

Sambungan terus tidak terbentuk, jadi trafik melalui relay pada VPS anda. Punca biasa ialah port UDP 3478 disekat, iaitu port STUN yang digunakan oleh peer untuk menemui alamat awam dan port mereka sendiri. Buka port tersebut pada firewall VPS dan pada firewall rangkaian berasingan penyedia anda, kemudian jalankan netbird status --detail sekali lagi dan baca baris Direct:. Pada rangkaian yang NAT-nya menetapkan port berbeza bagi setiap destinasi, relayed adalah satu-satunya hasil yang mungkin dan tiada apa-apa yang tersalah konfigurasi.

Pelanggan saya telah bersambung tetapi papan pemuka tidak menunjukkan sebarang peer. Apa yang berlaku?

Pelanggan tersebut mendaftar dengan servis hos NetBird dan bukannya pelayan anda, yang berlaku apabila --management-url tidak disertakan. netbird status --detail mencetak pelayan yang dihubungi pada baris Management:, jadi nilai seperti https://api.netbird.io:443 mengesahkan perkara tersebut. Jalankan sudo netbird down, kemudian sudo netbird up --management-url https://netbird.example.com, dan peer tersebut akan muncul dalam papan pemuka anda.

Apakah perbezaan antara NetBird yang dihoskan sendiri dengan Headscale?

Kedua-duanya menggantikan pelayan kawalan berhos dengan pelayan yang anda jalankan sendiri. Headscale hanyalah satah kawalan: anda menguruskannya dengan arahan headscale dan fail konfigurasi, tiada konsol web rasmi, dan ia memacu pelanggan Tailscale rasmi. NetBird membekalkan pelanggan, papan pemuka pentadbir dan integrasi penyedia identiti sendiri dalam tindanan yang sama. Headscale lebih ringan untuk dijalankan dan menyimpan statusnya dalam fail. NetBird lebih mudah diberikan kepada pengguna yang tidak menggunakan terminal.

Berapakah saiz VPS yang diperlukan oleh pelayan NetBird yang dihoskan sendiri?

Minimum yang didokumenkan ialah 1 CPU dan 2 GB memori, dan 2 GB adalah saiz yang perlu dibeli. Had praktikal telah turun kepada sekitar 1 GB dalam keluaran terkini kerana penyedia identiti kini dibenamkan dan bukannya penggunaan berasingan. Tolak servis proxy dan CrowdSec pilihan semasa pemasangan, dan kekal menggunakan stor SQLite lalai sehingga anda benar-benar memerlukan PostgreSQL.