Arahan langkah demi langkah untuk menggunakan VPN Hailbytes dengan GUI Firezone disediakan di sini.
Mentadbir: Menyediakan contoh pelayan berkaitan secara langsung dengan bahagian ini.
Panduan Pengguna: Dokumen berguna yang boleh mengajar anda cara menggunakan Firezone dan menyelesaikan masalah biasa. Selepas pelayan berjaya digunakan, rujuk bahagian ini.
Terowong Split: Gunakan VPN untuk menghantar trafik ke julat IP tertentu sahaja.
Penyenaraian putih: Tetapkan alamat IP statik pelayan VPN untuk menggunakan senarai putih.
Terowong Terbalik: Buat terowong antara beberapa rakan sebaya menggunakan terowong terbalik.
Kami berbesar hati untuk membantu anda jika anda memerlukan bantuan untuk memasang, menyesuaikan atau menggunakan VPN Hailbytes.
Sebelum pengguna boleh menghasilkan atau memuat turun fail konfigurasi peranti, Firezone boleh dikonfigurasikan untuk memerlukan pengesahan. Pengguna juga mungkin perlu membuat pengesahan semula secara berkala untuk memastikan sambungan VPN mereka aktif.
Walaupun kaedah log masuk lalai Firezone ialah e-mel dan kata laluan tempatan, ia juga boleh disepadukan dengan mana-mana pembekal identiti OpenID Connect (OIDC) standard. Pengguna kini boleh log masuk ke Firezone menggunakan bukti kelayakan Okta, Google, Azure AD atau pembekal identiti peribadi mereka.
Integrasikan Pembekal OIDC Generik
Parameter konfigurasi yang diperlukan oleh Firezone untuk membenarkan SSO menggunakan pembekal OIDC ditunjukkan dalam contoh di bawah. Di /etc/firezone/firezone.rb, anda mungkin menemui fail konfigurasi. Jalankan firezone-ctl reconfigure dan firezone-ctl restart untuk mengemas kini aplikasi dan melaksanakan perubahan.
# Ini ialah contoh menggunakan Google dan Okta sebagai pembekal identiti SSO.
# Berbilang konfigurasi OIDC boleh ditambah pada contoh Firezone yang sama.
# Firezone boleh melumpuhkan VPN pengguna jika terdapat sebarang ralat dikesan semasa mencuba
# untuk menyegarkan akses_token mereka. Ini disahkan berfungsi untuk Google, Okta dan
# Azure SSO dan digunakan untuk memutuskan sambungan VPN pengguna secara automatik jika ia dialih keluar
# daripada pembekal OIDC. Biarkan ini dilumpuhkan jika pembekal OIDC anda
# mempunyai isu menyegarkan token akses kerana ia boleh mengganggu a
# sesi VPN pengguna.
lalai['firezone']['authentication']['disable_vpn_on_oidc_error'] = palsu
lalai['firezone']['authentication']['oidc'] = {
google: {
discovery_document_uri: "https://accounts.google.com/.well-known/openid-configuration",
client_id: “ ”,
rahsia_pelanggan: “ ”,
redirect_uri: "https://instance-id.yourfirezone.com/auth/oidc/google/callback/",
response_type: “kod”,
skop: "profil e-mel terbuka",
label: "Google"
},
okta: {
discovery_document_uri: “https:// /.well-known/openid-configuration”,
client_id: “ ”,
rahsia_pelanggan: “ ”,
redirect_uri: "https://instance-id.yourfirezone.com/auth/oidc/okta/callback/",
response_type: “kod”,
skop: "profil e-mel terbuka offline_access",
label: "Okta"
}
}
Tetapan konfigurasi berikut diperlukan untuk penyepaduan:
Untuk setiap pembekal OIDC, URL cantik yang sepadan dicipta untuk mengubah hala ke URL log masuk pembekal yang dikonfigurasikan. Untuk contoh konfigurasi OIDC di atas, URL ialah:
Pembekal kami mempunyai dokumentasi untuk:
Jika pembekal identiti anda mempunyai penyambung OIDC generik dan tidak disenaraikan di atas, sila pergi ke dokumentasi mereka untuk mendapatkan maklumat tentang cara mendapatkan semula tetapan konfigurasi yang diperlukan.
Tetapan di bawah tetapan/keselamatan boleh ditukar untuk memerlukan pengesahan semula berkala. Ini boleh digunakan untuk menguatkuasakan keperluan pengguna memasuki Firezone secara tetap untuk meneruskan sesi VPN mereka.
Tempoh sesi boleh dikonfigurasikan antara satu jam dan sembilan puluh hari. Dengan menetapkan ini kepada Jangan sekali-kali, anda boleh mendayakan sesi VPN pada bila-bila masa. Ini adalah standard.
Pengguna mesti menamatkan sesi VPN mereka dan log masuk ke portal Firezone untuk mengesahkan semula sesi VPN yang telah tamat tempoh (URL ditentukan semasa penggunaan).
Anda boleh mengesahkan semula sesi anda dengan mengikut arahan pelanggan tepat yang terdapat di sini.
Status Sambungan VPN
Lajur jadual Sambungan VPN halaman Pengguna memaparkan status sambungan pengguna. Ini ialah status sambungan:
DIDAYAKAN – Sambungan didayakan.
DIHIDAPKAN – Sambungan dilumpuhkan oleh pentadbir atau kegagalan muat semula OIDC.
TAMAT TEMPOH – Sambungan dilumpuhkan kerana tamat tempoh pengesahan atau pengguna tidak melog masuk buat kali pertama.
Melalui penyambung OIDC umum, Firezone mendayakan Single Sign-On (SSO) dengan Google Workspace dan Cloud Identity. Panduan ini akan menunjukkan kepada anda cara mendapatkan parameter konfigurasi yang disenaraikan di bawah, yang diperlukan untuk penyepaduan:
1. Skrin Konfigurasi OAuth
Jika ini kali pertama anda membuat ID klien OAuth baharu, anda akan diminta untuk mengkonfigurasi skrin persetujuan.
*Pilih Dalaman untuk jenis pengguna. Ini memastikan hanya akaun milik pengguna dalam Organisasi Google Workspace anda boleh membuat konfigurasi peranti. JANGAN pilih Luaran melainkan anda mahu mendayakan sesiapa yang mempunyai Akaun Google yang sah untuk membuat konfigurasi peranti.
Pada skrin maklumat Apl:
2. Cipta ID Klien OAuth
Bahagian ini adalah berdasarkan dokumentasi Google sendiri tentang menyediakan OAuth 2.0.
Lawati Google Cloud Console Halaman kelayakan halaman, klik + Cipta Bukti kelayakan dan pilih ID klien OAuth.
Pada skrin penciptaan ID klien OAuth:
Selepas mencipta ID pelanggan OAuth, anda akan diberikan ID Pelanggan dan Rahsia Pelanggan. Ini akan digunakan bersama-sama dengan URI ubah hala dalam langkah seterusnya.
Edit /etc/firezone/firezone.rb untuk memasukkan pilihan di bawah:
# Menggunakan Google sebagai pembekal identiti SSO
lalai['firezone']['authentication']['oidc'] = {
google: {
discovery_document_uri: "https://accounts.google.com/.well-known/openid-configuration",
client_id: “ ”,
rahsia_pelanggan: “ ”,
redirect_uri: "https://instance-id.yourfirezone.com/auth/oidc/google/callback/",
response_type: “kod”,
skop: "profil e-mel terbuka",
label: "Google"
}
}
Jalankan firezone-ctl reconfigure dan firezone-ctl restart untuk mengemas kini aplikasi. Anda kini sepatutnya melihat butang Log masuk dengan Google di URL Firezone akar.
Firezone menggunakan penyambung OIDC generik untuk memudahkan Single Sign-On (SSO) dengan Okta. Tutorial ini akan menunjukkan kepada anda cara untuk mendapatkan parameter konfigurasi yang disenaraikan di bawah, yang diperlukan untuk penyepaduan:
Bahagian panduan ini adalah berdasarkan dokumentasi Okta.
Dalam Konsol Pentadbiran, pergi ke Aplikasi > Aplikasi dan klik Cipta Penyepaduan Apl. Tetapkan kaedah Log masuk kepada OICD – OpenID Connect dan jenis Aplikasi kepada aplikasi Web.
Konfigurasikan tetapan ini:
Setelah tetapan disimpan, anda akan diberikan ID Pelanggan, Rahsia Pelanggan dan Domain Okta. 3 nilai ini akan digunakan dalam Langkah 2 untuk mengkonfigurasi Firezone.
Edit /etc/firezone/firezone.rb untuk memasukkan pilihan di bawah. awak url_dokumen_penemuan akan /.well-known/openid-configuration dilampirkan pada akhir anda okta_domain.
# Menggunakan Okta sebagai pembekal identiti SSO
lalai['firezone']['authentication']['oidc'] = {
okta: {
discovery_document_uri: “https:// /.well-known/openid-configuration”,
client_id: “ ”,
rahsia_pelanggan: “ ”,
redirect_uri: "https://instance-id.yourfirezone.com/auth/oidc/okta/callback/",
response_type: “kod”,
skop: "profil e-mel terbuka offline_access",
label: "Okta"
}
}
Jalankan firezone-ctl reconfigure dan firezone-ctl restart untuk mengemas kini aplikasi. Anda kini sepatutnya melihat butang Log masuk dengan Okta di URL Firezone akar.
Pengguna yang boleh mengakses apl Firezone boleh dihadkan oleh Okta. Pergi ke halaman Tugasan Penyepaduan Apl Firezone Console Okta anda untuk mencapai perkara ini.
Melalui penyambung OIDC generik, Firezone mendayakan Single Sign-On (SSO) dengan Azure Active Directory. Manual ini akan menunjukkan kepada anda cara mendapatkan parameter konfigurasi yang disenaraikan di bawah, yang diperlukan untuk penyepaduan:
Panduan ini diambil daripada Dokumen Direktori Aktif Azure.
Pergi ke halaman Azure Active Directory portal Azure. Pilih pilihan menu Urus, pilih Pendaftaran Baharu, kemudian daftar dengan memberikan maklumat di bawah:
Selepas mendaftar, buka paparan butiran permohonan dan salin ID Permohonan (pelanggan).. Ini akan menjadi nilai client_id. Seterusnya, buka menu titik akhir untuk mendapatkan semula Dokumen metadata OpenID Connect. Ini akan menjadi nilai discovery_document_uri.
Cipta rahsia pelanggan baharu dengan mengklik pilihan Sijil & rahsia di bawah menu Urus. Salin rahsia pelanggan; nilai rahsia pelanggan akan menjadi ini.
Akhir sekali, pilih pautan kebenaran API di bawah menu Urus, klik Tambahkan kebenaran, And select Grafik Microsoft, menambah e-mel, terbuka, akses_ luar talian and profil kepada kebenaran yang diperlukan.
Edit /etc/firezone/firezone.rb untuk memasukkan pilihan di bawah:
# Menggunakan Azure Active Directory sebagai pembekal identiti SSO
lalai['firezone']['authentication']['oidc'] = {
biru: {
discovery_document_uri: “https://login.microsoftonline.com/ /v2.0/.well-known/openid-configuration”,
client_id: “ ”,
rahsia_pelanggan: “ ”,
redirect_uri: "https://instance-id.yourfirezone.com/auth/oidc/azure/callback/",
response_type: “kod”,
skop: "profil e-mel terbuka offline_access",
label: "Azure"
}
}
Jalankan firezone-ctl reconfigure dan firezone-ctl restart untuk mengemas kini aplikasi. Anda kini sepatutnya melihat butang Log masuk dengan Azure di URL Firezone akar.
Azure AD membolehkan pentadbir mengehadkan akses apl kepada kumpulan pengguna tertentu dalam syarikat anda. Maklumat lanjut tentang cara melakukan ini boleh didapati dalam dokumentasi Microsoft.
Chef Omnibus digunakan oleh Firezone untuk mengurus tugas termasuk pembungkusan keluaran, penyeliaan proses, pengurusan log dan banyak lagi.
Kod Ruby membentuk fail konfigurasi utama, yang terletak di /etc/firezone/firezone.rb. Memulakan semula konfigurasi semula sudo firezone-ctl selepas membuat pengubahsuaian pada fail ini menyebabkan Chef mengenali perubahan dan menerapkannya pada sistem pengendalian semasa.
Lihat rujukan fail konfigurasi untuk senarai lengkap pembolehubah konfigurasi dan penerangannya.
Instance Firezone anda boleh diuruskan melalui firezone-ctl perintah, seperti yang ditunjukkan di bawah. Kebanyakan subperintah memerlukan awalan dengan sudo.
root@demo:~# firezone-ctl
omnibus-ctl: perintah (subperintah)
Perintah Am:
membersihkan
Padamkan *semua* data firezone dan mulakan dari awal.
buat-atau-set semula-pentadbir
Menetapkan semula kata laluan untuk pentadbir dengan e-mel yang ditentukan secara lalai['firezone']['admin_email'] atau mencipta pentadbir baharu jika e-mel itu tidak wujud.
membantu
Cetak mesej bantuan ini.
kumpulkan semula
Konfigurasikan semula aplikasi.
set semula-rangkaian
Menetapkan semula nftables, antara muka WireGuard dan jadual penghalaan kembali kepada lalai Firezone.
show-config
Tunjukkan konfigurasi yang akan dijana dengan konfigurasi semula.
teardown-network
Mengalih keluar antara muka WireGuard dan jadual nftable firezone.
force-cert-renewal
Paksa pembaharuan sijil sekarang walaupun ia belum tamat tempoh.
berhenti-sijil-pembaharuan
Mengalih keluar cronjob yang memperbaharui sijil.
buang
Matikan semua proses dan nyahpasang penyelia proses (data akan disimpan).
versi
Paparkan versi semasa Firezone
Arahan Pengurusan Perkhidmatan:
anggun-membunuh
Cuba perhentian yang anggun, kemudian SIGKILL keseluruhan kumpulan proses.
hup
Hantar perkhidmatan HUP.
int
Hantar perkhidmatan INT.
membunuh
Hantar perkhidmatan BUNUH.
sekali
Mulakan perkhidmatan jika ia tidak berfungsi. Jangan mulakan semula jika ia berhenti.
restart
Hentikan perkhidmatan jika ia berjalan, kemudian mulakannya semula.
senarai perkhidmatan
Senaraikan semua perkhidmatan (perkhidmatan yang didayakan muncul dengan *.)
permulaan
Mulakan perkhidmatan jika ia tidak berfungsi, dan mulakan semula jika ia berhenti.
terkini
Tunjukkan status semua perkhidmatan.
berhenti
Hentikan perkhidmatan, dan jangan mulakan semula perkhidmatan tersebut.
ekor
Tonton log perkhidmatan semua perkhidmatan yang didayakan.
jangka
Hantar perkhidmatan TERMA.
usr1
Hantar perkhidmatan USR1.
usr2
Hantar perkhidmatan USR2.
Semua sesi VPN mesti ditamatkan sebelum menaik taraf Firezone, yang juga memerlukan untuk menutup UI Web. Sekiranya berlaku masalah semasa naik taraf, kami menasihatkan untuk mengetepikan satu jam untuk penyelenggaraan.
Untuk meningkatkan Firezone, ambil tindakan berikut:
Jika sebarang masalah timbul, sila maklumkan kepada kami melalui menyerahkan tiket sokongan.
Terdapat beberapa perubahan pecah dan pengubahsuaian konfigurasi dalam 0.5.0 yang mesti ditangani. Ketahui lebih lanjut di bawah.
Nginx tidak lagi menyokong kekuatan SSL dan parameter port bukan SSL pada versi 0.5.0. Oleh kerana Firezone memerlukan SSL untuk berfungsi, kami menasihatkan agar anda mengalih keluar perkhidmatan Nginx bundle dengan menetapkan lalai['firezone']['nginx']['enabled'] = false dan halakan proksi terbalik anda ke apl Phoenix pada port 13000 sebaliknya (secara lalai ).
0.5.0 memperkenalkan sokongan protokol ACME untuk memperbaharui sijil SSL secara automatik dengan perkhidmatan Nginx yang digabungkan. Bagi membolehkan,
Kemungkinan untuk menambah peraturan dengan destinasi pendua hilang dalam Firezone 0.5.0. Skrip migrasi kami akan mengenali situasi ini secara automatik semasa peningkatan kepada 0.5.0 dan hanya mengekalkan peraturan yang destinasinya termasuk peraturan lain. Tiada apa yang perlu anda lakukan jika ini okey.
Jika tidak, sebelum menaik taraf, kami menasihatkan menukar set peraturan anda untuk menyingkirkan situasi ini.
Firezone 0.5.0 mengalih keluar sokongan untuk konfigurasi Okta dan Google SSO gaya lama yang memihak kepada konfigurasi berasaskan OIDC baharu yang lebih fleksibel.
Jika anda mempunyai sebarang konfigurasi di bawah kekunci lalai['firezone']['authentication']['okta'] atau['firezone']['authentication']['google'] lalai, anda perlu memindahkannya ke OIDC kami konfigurasi berasaskan menggunakan panduan di bawah.
Konfigurasi Google OAuth sedia ada
Alih keluar baris ini yang mengandungi konfigurasi Google OAuth lama daripada fail konfigurasi anda yang terletak di /etc/firezone/firezone.rb
lalai['firezone']['authentication']['google']['enabled']
lalai['firezone']['authentication']['google']['client_id']
lalai['firezone']['authentication']['google']['client_secret']
lalai['firezone']['authentication']['google']['redirect_uri']
Kemudian, konfigurasikan Google sebagai penyedia OIDC dengan mengikut prosedur di sini.
(Berikan arahan pautan)<<<<<<<<<<<<<<<<
Konfigurasikan Google OAuth Sedia Ada
Alih keluar baris ini yang mengandungi konfigurasi Okta OAuth lama daripada fail konfigurasi anda yang terletak di /etc/firezone/firezone.rb
lalai['firezone']['authentication']['okta']['enabled']
lalai['firezone']['authentication']['okta']['client_id']
lalai['firezone']['authentication']['okta']['client_secret']
Lalai['firezone']['authentication']['okta']['site']
Kemudian, konfigurasikan Okta sebagai penyedia OIDC dengan mengikuti prosedur di sini.
Bergantung pada persediaan dan versi semasa anda, patuhi arahan di bawah:
Jika anda sudah mempunyai integrasi OIDC:
Bagi sesetengah penyedia OIDC, peningkatan kepada >= 0.3.16 memerlukan mendapatkan token muat semula untuk skop akses luar talian. Dengan melakukan ini, ia memastikan bahawa Firezone mengemas kini dengan pembekal identiti dan sambungan VPN dimatikan selepas pengguna dipadamkan. Lelaran awal Firezone tidak mempunyai ciri ini. Dalam sesetengah keadaan, pengguna yang dipadamkan daripada pembekal identiti anda mungkin masih disambungkan ke VPN.
Anda perlu memasukkan akses luar talian dalam parameter skop konfigurasi OIDC anda untuk pembekal OIDC yang menyokong skop akses luar talian. Firezone-ctl reconfigure mesti dilaksanakan untuk menggunakan perubahan pada fail konfigurasi Firezone, yang terletak di /etc/firezone/firezone.rb.
Bagi pengguna yang telah disahkan oleh pembekal OIDC anda, anda akan melihat tajuk Sambungan OIDC dalam halaman butiran pengguna UI web jika Firezone berjaya mendapatkan semula token muat semula.
Jika ini tidak berjaya, anda perlu memadamkan apl OAuth sedia ada anda dan ulangi langkah persediaan OIDC untuk buat penyepaduan apl baharu .
Saya mempunyai penyepaduan OAuth sedia ada
Sebelum 0.3.11, Firezone menggunakan penyedia OAuth2 yang diprakonfigurasikan.
Ikut arahan di sini untuk berhijrah ke OIDC.
Saya belum menyepadukan pembekal identiti
Tidak perlu tindakan.
Anda boleh mengikuti arahan di sini untuk membolehkan SSO melalui pembekal OIDC.
Sebagai gantinya, lalai['firezone']['external url'] telah menggantikan pilihan konfigurasi lalai['firezone']['fqdn'].
Tetapkan ini pada URL portal dalam talian Firezone anda yang boleh diakses oleh orang awam. Ia akan lalai kepada https:// serta FQDN pelayan anda jika dibiarkan tidak ditentukan.
Fail konfigurasi terletak di /etc/firezone/firezone.rb. Lihat rujukan fail konfigurasi untuk senarai lengkap pembolehubah konfigurasi dan penerangannya.
Firezone tidak lagi menyimpan kunci peribadi peranti pada pelayan Firezone pada versi 0.3.0.
UI Web Firezone tidak akan membenarkan anda memuat turun semula atau melihat konfigurasi ini, tetapi mana-mana peranti sedia ada harus terus beroperasi seperti sedia ada.
Jika anda menaik taraf daripada Firezone 0.1.x, terdapat beberapa perubahan fail konfigurasi yang mesti ditangani secara manual.
Untuk membuat pengubahsuaian yang diperlukan pada fail /etc/firezone/firezone.rb anda, jalankan arahan di bawah sebagai root.
cp /etc/firezone/firezone.rb /etc/firezone/firezone.rb.bak
sed -i “s/\['enable'\]/\['enabled'\]/” /etc/firezone/firezone.rb
echo “default['firezone']['connectivity_checks']['enabled'] = true" >> /etc/firezone/firezone.rb
echo “default['firezone']['connectivity_checks']['interval'] = 3_600” >> /etc/firezone/firezone.rb
firezone-ctl konfigurasi semula
firezone-ctl dimulakan semula
Menyemak log Firezone ialah langkah pertama yang bijak untuk sebarang isu yang boleh berlaku.
Jalankan sudo firezone-ctl tail untuk melihat log Firezone.
Majoriti masalah sambungan dengan Firezone disebabkan oleh peraturan iptables atau nftables yang tidak serasi. Anda mesti memastikan bahawa mana-mana peraturan yang anda adakan tidak bercanggah dengan peraturan Firezone.
Pastikan rantaian FORWARD membenarkan paket daripada pelanggan WireGuard anda ke lokasi yang anda ingin biarkan melalui Firezone jika sambungan Internet anda merosot setiap kali anda mengaktifkan terowong WireGuard anda.
Ini boleh dicapai jika anda menggunakan ufw dengan memastikan bahawa dasar penghalaan lalai dibenarkan:
ubuntu@fz:~$ sudo ufw lalai benarkan dihalakan
Dasar laluan lalai ditukar kepada 'benarkan'
(pastikan anda mengemas kini peraturan anda dengan sewajarnya)
A ufw status untuk pelayan Firezone biasa mungkin kelihatan seperti ini:
ubuntu@fz:~$ sudo ufw status verbose
Status: aktif
Log: hidup (rendah)
Lalai: tolak (masuk), benarkan (keluar), benarkan (dihalakan)
Profil baharu: langkau
Untuk Tindakan Daripada
— —— —-
22/tcp BENARKAN DI Mana-mana
80/tcp BENARKAN DI Mana-mana
443/tcp BENARKAN DI Mana-mana
51820/udp BENARKAN DI Mana-mana
22/tcp (v6) BENARKAN DI Mana-mana (v6)
80/tcp (v6) BENARKAN DI Mana-mana (v6)
443/tcp (v6) BENARKAN DI Mana-mana (v6)
51820/udp (v6) BENARKAN DI Mana-mana (v6)
Kami menasihati mengehadkan akses kepada antara muka web untuk penggunaan pengeluaran yang sangat sensitif dan kritikal misi, seperti yang dijelaskan di bawah.
Servis | Pelabuhan Lalai | Dengar Alamat | Penerangan Produk |
Nginx | 80, 443 | semua | Port HTTP(S) awam untuk mentadbir Firezone dan memudahkan pengesahan. |
Pengawal Wire | 51820 | semua | Port WireGuard awam digunakan untuk sesi VPN. (UDP) |
Postgresql | 15432 | 127.0.0.1 | Port tempatan sahaja yang digunakan untuk pelayan Postgresql yang digabungkan. |
Phoenix | 13000 | 127.0.0.1 | Port tempatan sahaja yang digunakan oleh pelayan aplikasi elixir huluan. |
Kami menasihatkan anda untuk memikirkan tentang mengehadkan akses kepada UI web Firezone yang terdedah secara terbuka (secara lalai port 443/tcp dan 80/tcp) dan sebaliknya menggunakan terowong WireGuard untuk mengurus Firezone untuk pengeluaran dan penempatan yang dihadapi oleh orang ramai di mana pentadbir tunggal akan bertanggungjawab mencipta dan mengedarkan konfigurasi peranti kepada pengguna akhir.
Sebagai contoh, jika pentadbir mencipta konfigurasi peranti dan mencipta terowong dengan alamat WireGuard tempatan 10.3.2.2, konfigurasi ufw berikut akan membolehkan pentadbir mengakses UI web Firezone pada antara muka wg-firezone pelayan menggunakan lalai 10.3.2.1 alamat terowong:
root@demo:~# ufw status verbose
Status: aktif
Log: hidup (rendah)
Lalai: tolak (masuk), benarkan (keluar), benarkan (dihalakan)
Profil baharu: langkau
Untuk Tindakan Daripada
— —— —-
22/tcp BENARKAN DI Mana-mana
51820/udp BENARKAN DI Mana-mana
Di mana-mana BENARKAN MASUK 10.3.2.2
22/tcp (v6) BENARKAN DI Mana-mana (v6)
51820/udp (v6) BENARKAN DI Mana-mana (v6)
Ini akan meninggalkan sahaja 22/tcp terdedah untuk akses SSH untuk mengurus pelayan (pilihan), dan 51820/udp terdedah untuk mewujudkan terowong WireGuard.
Firezone menggabungkan pelayan Postgresql dan padanan psql utiliti yang boleh digunakan dari shell tempatan seperti:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c “SQL_STATEMENT”
Ini boleh membantu untuk tujuan penyahpepijatan.
Tugasan Biasa:
Menyenaraikan semua pengguna:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c “PILIH * DARI pengguna;”
Menyenaraikan semua peranti:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c “PILIH * DARI peranti;”
Tukar peranan pengguna:
Tetapkan peranan kepada 'admin' atau 'unprivileged':
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c “KEMASKINI pengguna SET peranan = 'admin' WHERE e-mel = 'user@example.com';”
Membuat sandaran pangkalan data:
Tambahan pula, disertakan ialah program pembuangan pg, yang boleh digunakan untuk mengambil sandaran tetap pangkalan data. Jalankan kod berikut untuk membuang salinan pangkalan data dalam format pertanyaan SQL biasa (gantikan /path/to/backup.sql dengan lokasi di mana fail SQL harus dibuat):
/opt/firezone/embedded/bin/pg_dump \
-U firezone \
-d firezone \
-h localhost \
-p 15432 > /path/to/backup.sql
Selepas Firezone telah berjaya digunakan, anda mesti menambah pengguna untuk memberikan mereka akses kepada rangkaian anda. UI Web digunakan untuk melakukan ini.
Dengan memilih butang "Tambah Pengguna" di bawah /pengguna, anda boleh menambah pengguna. Anda akan dikehendaki memberikan pengguna alamat e-mel dan kata laluan. Untuk membenarkan akses kepada pengguna dalam organisasi anda secara automatik, Firezone juga boleh antara muka dan penyegerakan dengan pembekal identiti. Butiran lanjut tersedia dalam Pengesahan. < Tambah pautan ke Sahkan
Kami menasihatkan agar pengguna membuat konfigurasi peranti mereka sendiri supaya kunci peribadi hanya boleh dilihat oleh mereka. Pengguna boleh menjana konfigurasi peranti mereka sendiri dengan mengikut arahan pada Arahan Pelanggan muka surat.
Semua konfigurasi peranti pengguna boleh dibuat oleh pentadbir Firezone. Pada halaman profil pengguna yang terletak di /users, pilih pilihan "Tambah Peranti" untuk mencapai ini.
[Sisipkan tangkapan skrin]
Anda boleh menghantar e-mel kepada pengguna fail konfigurasi WireGuard selepas membuat profil peranti.
Pengguna dan peranti dipautkan. Untuk butiran lanjut tentang cara menambah pengguna, lihat Tambah Pengguna.
Melalui penggunaan sistem penapis bersih kernel, Firezone membolehkan keupayaan penapisan jalan keluar untuk menentukan paket DROP atau ACCEPT. Semua lalu lintas biasanya dibenarkan.
IPv4 dan IPv6 CIDR dan alamat IP disokong melalui Senarai Benar dan Senarai Penafian, masing-masing. Anda boleh memilih untuk skop peraturan kepada pengguna apabila menambahkan peraturan itu, yang menggunakan peraturan itu pada semua peranti pengguna tersebut.
Pasang dan konfigurasikan
Untuk mewujudkan sambungan VPN menggunakan klien WireGuard asli, rujuk panduan ini.
Pelanggan WireGuard Rasmi yang terdapat di sini adalah serasi dengan Firezone:
Lawati tapak web WireGuard rasmi di https://www.wireguard.com/install/ untuk sistem OS yang tidak disebutkan di atas.
Sama ada pentadbir Firezone anda atau anda sendiri boleh menjana fail konfigurasi peranti menggunakan portal Firezone.
Lawati URL yang telah disediakan oleh pentadbir Firezone anda untuk menjana sendiri fail konfigurasi peranti. Firma anda akan mempunyai URL unik untuk ini; dalam kes ini, ia adalah https://instance-id.yourfirezone.com.
Log masuk ke Firezone Okta SSO
[Sisipkan Tangkapan Skrin]
Import fail.conf ke dalam klien WireGuard dengan membukanya. Dengan membalikkan suis Aktifkan, anda boleh memulakan sesi VPN.
[Sisipkan Tangkapan Skrin]
Ikut arahan di bawah jika pentadbir rangkaian anda telah mewajibkan pengesahan berulang untuk memastikan sambungan VPN anda aktif.
Awak perlu:
URL portal Firezone: Tanya pentadbir rangkaian anda untuk sambungan.
Pentadbir rangkaian anda sepatutnya boleh menawarkan log masuk dan kata laluan anda. Tapak Firezone akan menggesa anda untuk log masuk menggunakan perkhidmatan log masuk tunggal yang digunakan oleh majikan anda (seperti Google atau Okta).
[Sisipkan Tangkapan Skrin]
Pergi ke URL portal Firezone dan log masuk menggunakan bukti kelayakan yang telah diberikan oleh pentadbir rangkaian anda. Jika anda sudah log masuk, klik butang Sahkan semula sebelum log masuk semula.
[Sisipkan Tangkapan Skrin]
[Sisipkan Tangkapan Skrin]
Untuk mengimport profil konfigurasi WireGuard menggunakan Network Manager CLI pada peranti Linux, ikut arahan ini (nmcli).
Jika profil mempunyai sokongan IPv6 didayakan, cuba mengimport fail konfigurasi menggunakan GUI Pengurus Rangkaian mungkin gagal dengan ralat berikut:
ipv6.method: kaedah "auto" tidak disokong untuk WireGuard
Ia adalah perlu untuk memasang utiliti ruang pengguna WireGuard. Ini akan menjadi pakej yang dipanggil wireguard atau wireguard-tools untuk pengedaran Linux.
Untuk Ubuntu/Debian:
sudo apt install wireguard
Untuk menggunakan Fedora:
sudo dnf pasang wireguard-tools
Arch Linux:
sudo pacman -S wireguard-tools
Lawati tapak web WireGuard rasmi di https://www.wireguard.com/install/ untuk pengedaran yang tidak disebutkan di atas.
Sama ada pentadbir Firezone anda atau penjanaan sendiri boleh menjana fail konfigurasi peranti menggunakan portal Firezone.
Lawati URL yang telah disediakan oleh pentadbir Firezone anda untuk menjana sendiri fail konfigurasi peranti. Firma anda akan mempunyai URL unik untuk ini; dalam kes ini, ia adalah https://instance-id.yourfirezone.com.
[Sisipkan Tangkapan Skrin]
Import fail konfigurasi yang dibekalkan menggunakan nmcli:
fail wireguard jenis import sambungan sudo nmcli /path/to/configuration.conf
Nama fail konfigurasi akan sepadan dengan sambungan/antara muka WireGuard. Selepas import, sambungan boleh dinamakan semula jika perlu:
sambungan nmcli ubah suai [nama lama] connection.id [nama baharu]
Melalui baris arahan, sambung ke VPN seperti berikut:
sambungan nmcli [nama vpn]
Untuk memutuskan sambungan:
sambungan nmcli turun [nama vpn]
Applet Pengurus Rangkaian yang berkenaan juga boleh digunakan untuk mengurus sambungan jika menggunakan GUI.
Dengan memilih "ya" untuk pilihan autosambung, sambungan VPN boleh dikonfigurasikan untuk menyambung secara automatik:
sambungan nmcli ubah suai sambungan [nama vpn]. <<<<<<<<<<<<<<<<<<<<<<
autosambung ya
Untuk melumpuhkan sambungan automatik tetapkannya semula kepada no:
sambungan nmcli ubah suai sambungan [nama vpn].
autosambung no
Untuk mengaktifkan MFA Pergi ke portal Firezone / akaun pengguna/daftar halaman mfa. Gunakan apl pengesah anda untuk mengimbas kod QR selepas ia dijana, kemudian masukkan kod enam digit.
Hubungi Pentadbir anda untuk menetapkan semula maklumat akses akaun anda jika anda tersalah letak apl pengesah anda.
Tutorial ini akan membimbing anda melalui proses menyediakan ciri terowong berpecah WireGuard dengan Firezone supaya hanya trafik ke julat IP tertentu dimajukan melalui pelayan VPN.
Julat IP yang pelanggan akan mengarahkan trafik rangkaian dinyatakan dalam medan IP Dibenarkan yang terletak pada halaman /setting/lalai. Hanya konfigurasi terowong WireGuard yang baru dibuat yang dihasilkan oleh Firezone akan terjejas oleh perubahan pada medan ini.
[Sisipkan Tangkapan Skrin]
Nilai lalai ialah 0.0.0.0/0, ::/0, yang mengarahkan semua trafik rangkaian daripada klien ke pelayan VPN.
Contoh nilai dalam bidang ini termasuk:
0.0.0.0/0, ::/0 – semua trafik rangkaian akan dihalakan ke pelayan VPN.
192.0.2.3/32 – hanya trafik ke alamat IP tunggal akan dihalakan ke pelayan VPN.
3.5.140.0/22 – hanya trafik ke IP dalam julat 3.5.140.1 – 3.5.143.254 akan dihalakan ke pelayan VPN. Dalam contoh ini, julat CIDR untuk rantau AWS ap-timur laut-2 telah digunakan.
Firezone memilih antara muka jalan keluar yang dikaitkan dengan laluan paling tepat dahulu apabila menentukan tempat untuk menghalakan paket.
Pengguna mesti menjana semula fail konfigurasi dan menambahkannya pada klien WireGuard asli mereka untuk mengemas kini peranti pengguna sedia ada dengan konfigurasi terowong pisah baharu.
Untuk arahan, lihat Tambah peranti. <<<<<<<<<< Tambah pautan
Manual ini akan menunjukkan cara memautkan dua peranti menggunakan Firezone sebagai geganti. Satu kes penggunaan biasa adalah untuk membolehkan pentadbir mengakses pelayan, bekas atau mesin yang dilindungi oleh NAT atau tembok api.
Ilustrasi ini menunjukkan senario mudah di mana Peranti A dan B membina terowong.
[Masukkan gambar seni bina firezone]
Mulakan dengan membuat Peranti A dan Peranti B dengan menavigasi ke /users/[user_id]/new_device. Dalam tetapan untuk setiap peranti, pastikan parameter berikut ditetapkan kepada nilai yang disenaraikan di bawah. Anda boleh menetapkan tetapan peranti semasa membuat konfigurasi peranti (lihat Tambah Peranti). Jika anda perlu mengemas kini tetapan pada peranti sedia ada, anda boleh berbuat demikian dengan menjana konfigurasi peranti baharu.
Ambil perhatian bahawa semua peranti mempunyai halaman /setting/defaults di mana PersistentKeepalive boleh dikonfigurasikan.
AllowedIPs = 10.3.2.2/32
Ini ialah IP atau julat IP Peranti B
PersistentKeepalive = 25
Jika peranti berada di belakang NAT, ini memastikan peranti dapat memastikan terowong itu hidup dan terus menerima paket daripada antara muka WireGuard. Biasanya nilai 25 sudah memadai, tetapi anda mungkin perlu menurunkan nilai ini bergantung pada persekitaran anda.
AllowedIPs = 10.3.2.3/32
Ini ialah IP atau julat IP Peranti A
PersistentKeepalive = 25
Contoh ini menunjukkan situasi di mana Peranti A boleh berkomunikasi dengan Peranti B hingga D dalam kedua-dua arah. Persediaan ini boleh mewakili jurutera atau pentadbir yang mengakses pelbagai sumber (pelayan, bekas atau mesin) merentas pelbagai rangkaian.
[Rajah Senibina]<<<<<<<<<<<<<<<<<<<<<<<<
Pastikan tetapan berikut dibuat dalam tetapan setiap peranti kepada nilai yang sepadan. Apabila membuat konfigurasi peranti, anda boleh menentukan tetapan peranti (lihat Tambah Peranti). Konfigurasi peranti baharu boleh dibuat jika tetapan pada peranti sedia ada perlu dikemas kini.
AllowedIPs = 10.3.2.3/32, 10.3.2.4/32, 10.3.2.5/32
Ini ialah IP peranti B hingga D. IP Peranti B hingga D mesti disertakan dalam mana-mana julat IP yang anda pilih untuk tetapkan.
PersistentKeepalive = 25
Ini menjamin bahawa peranti boleh mengekalkan terowong dan terus menerima paket daripada antara muka WireGuard walaupun ia dilindungi oleh NAT. Dalam kebanyakan kes, nilai 25 adalah memadai, namun bergantung pada persekitaran anda, anda mungkin perlu menurunkan angka ini.
Untuk menawarkan IP keluar statik tunggal untuk semua trafik pasukan anda mengalir keluar, Firezone boleh digunakan sebagai get laluan NAT. Situasi ini melibatkan penggunaannya yang kerap:
Penglibatan Perundingan: Minta pelanggan anda menyenarai putih satu alamat IP statik dan bukannya IP peranti unik setiap pekerja.
Menggunakan proksi atau menutup IP sumber anda untuk tujuan keselamatan atau privasi.
Contoh mudah mengehadkan akses kepada aplikasi web yang dihoskan sendiri kepada satu IP statik tersenarai putih yang menjalankan Firezone akan ditunjukkan dalam siaran ini. Dalam ilustrasi ini, Firezone dan sumber yang dilindungi berada dalam kawasan VPC yang berbeza.
Penyelesaian ini sering digunakan sebagai ganti mengurus senarai putih IP untuk banyak pengguna akhir, yang boleh memakan masa apabila senarai akses berkembang.
Objektif kami adalah untuk menyediakan pelayan Firezone pada contoh EC2 untuk mengubah hala trafik VPN ke sumber terhad. Dalam keadaan ini, Firezone berfungsi sebagai proksi rangkaian atau get laluan NAT untuk memberikan setiap peranti yang disambungkan IP keluar awam yang unik.
Dalam kes ini, tika EC2 bernama tc2.micro mempunyai tika Firezone dipasang padanya. Untuk mendapatkan maklumat tentang menggunakan Firezone, pergi ke Panduan Penggunaan. Berhubung dengan AWS, pastikan:
Kumpulan keselamatan tika Firezone EC2 membenarkan trafik keluar ke alamat IP sumber yang dilindungi.
Contoh Firezone disertakan dengan IP anjal. Trafik yang dimajukan melalui tika Firezone ke destinasi luar akan mempunyai ini sebagai alamat IP sumbernya. Alamat IP yang dimaksudkan ialah 52.202.88.54.
[Sisipkan Tangkapan Skrin]<<<<<<<<<<<<<<<<<<<<<<<<
Aplikasi web yang dihoskan sendiri berfungsi sebagai sumber yang dilindungi dalam kes ini. Apl web hanya boleh diakses dengan permintaan yang datang daripada alamat IP 52.202.88.54. Bergantung pada sumber, adalah perlu untuk membenarkan trafik masuk pada pelbagai pelabuhan dan jenis trafik. Ini tidak diliputi dalam manual ini.
[Sisipkan tangkapan skrin]<<<<<<<<<<<<<<<<<<<<<<<<
Sila beritahu pihak ketiga yang bertanggungjawab ke atas sumber yang dilindungi bahawa trafik daripada IP statik yang ditakrifkan dalam Langkah 1 mesti dibenarkan (dalam kes ini 52.202.88.54).
Secara lalai, semua trafik pengguna akan melalui pelayan VPN dan datang daripada IP statik yang telah dikonfigurasikan dalam Langkah 1 (dalam kes ini 52.202.88.54). Walau bagaimanapun, jika terowong berpecah telah didayakan, tetapan mungkin diperlukan untuk memastikan IP destinasi sumber yang dilindungi disenaraikan di antara IP yang Dibenarkan.
Ditunjukkan di bawah ialah senarai lengkap pilihan konfigurasi yang tersedia dalam /etc/firezone/firezone.rb.
pilihan | Penerangan | nilai asal |
lalai['firezone']['external_url'] | URL yang digunakan untuk mengakses portal web tika Firezone ini. | “https://#{node['fqdn'] || nod['hostname']}” |
lalai['firezone']['config_directory'] | Direktori peringkat atas untuk konfigurasi Firezone. | /etc/firezone' |
lalai['firezone']['install_directory'] | Direktori peringkat atas untuk memasang Firezone. | /opt/firezone' |
lalai['firezone']['app_directory'] | Direktori peringkat atas untuk memasang aplikasi web Firezone. | “#{node['firezone']['install_directory']}/embedded/service/firezone” |
lalai['firezone']['log_directory'] | Direktori peringkat atas untuk log Firezone. | /var/log/firezone' |
lalai['firezone']['var_directory'] | Direktori peringkat atas untuk fail masa jalan Firezone. | /var/opt/firezone' |
lalai['firezone']['user'] | Nama pengguna Linux yang tidak mempunyai hak istimewa yang akan dimiliki oleh kebanyakan perkhidmatan dan fail. | zon kebakaran' |
lalai['firezone']['group'] | Nama kumpulan Linux kebanyakan perkhidmatan dan fail akan dimiliki. | zon kebakaran' |
lalai['firezone']['admin_email'] | Alamat e-mel untuk pengguna Firezone awal. | “firezone@localhost” |
lalai['firezone']['max_devices_per_user'] | Bilangan maksimum peranti yang boleh dimiliki oleh pengguna. | 10 |
lalai['firezone']['allow_unprivileged_device_management'] | Membenarkan pengguna bukan pentadbir membuat dan memadam peranti. | TRUE |
lalai['firezone']['allow_unprivileged_device_configuration'] | Membenarkan pengguna bukan pentadbir mengubah suai konfigurasi peranti. Apabila dilumpuhkan, menghalang pengguna yang tidak mempunyai hak daripada menukar semua medan peranti kecuali nama dan perihalan. | TRUE |
lalai['firezone']['egress_interface'] | Nama antara muka tempat trafik terowong akan keluar. Jika tiada, antara muka laluan lalai akan digunakan. | tiada |
lalai['firezone']['fips_enabled'] | Dayakan atau lumpuhkan mod OpenSSL FIPs. | tiada |
lalai['firezone']['logging']['enabled'] | Dayakan atau lumpuhkan pengelogan merentas Firezone. Tetapkan kepada false untuk melumpuhkan pengelogan sepenuhnya. | TRUE |
lalai['perusahaan']['nama'] | Nama yang digunakan oleh buku masakan 'perusahaan' Chef. | zon kebakaran' |
lalai['firezone']['install_path'] | Pasang laluan yang digunakan oleh buku masakan Chef 'enterprise'. Harus ditetapkan kepada sama seperti install_directory di atas. | nod['firezone']['install_directory'] |
lalai['firezone']['sysvinit_id'] | Pengecam yang digunakan dalam /etc/inittab. Mestilah urutan unik 1-4 aksara. | SUP' |
lalai['firezone']['authentication']['local']['enabled'] | Dayakan atau lumpuhkan pengesahan e-mel/kata laluan setempat. | TRUE |
lalai['firezone']['authentication']['auto_create_oidc_users'] | Buat pengguna yang log masuk dari OIDC buat kali pertama secara automatik. Lumpuhkan untuk membenarkan hanya pengguna sedia ada log masuk melalui OIDC. | TRUE |
lalai['firezone']['authentication']['disable_vpn_on_oidc_error'] | Lumpuhkan VPN pengguna jika ralat dikesan semasa cuba memuat semula token OIDC mereka. | SALAH |
lalai['firezone']['authentication']['oidc'] | Konfigurasi OpenID Connect, dalam format {“provider” => [config…]} – Lihat Dokumentasi OpenIDConnect untuk contoh konfigurasi. | {} |
lalai['firezone']['nginx']['enabled'] | Dayakan atau lumpuhkan pelayan nginx yang digabungkan. | TRUE |
lalai['firezone']['nginx']['ssl_port'] | Port mendengar HTTPS. | 443 |
lalai['firezone']['nginx']['direktori'] | Direktori untuk menyimpan konfigurasi hos maya nginx berkaitan Firezone. | “#{node['firezone']['var_directory']}/nginx/etc” |
lalai['firezone']['nginx']['log_directory'] | Direktori untuk menyimpan fail log nginx berkaitan Firezone. | “#{node['firezone']['log_directory']}/nginx” |
lalai['firezone']['nginx']['log_rotation']['file_maxbait'] | Saiz fail untuk memutar fail log Nginx. | 104857600 |
lalai['firezone']['nginx']['log_rotation']['num_to_keep'] | Bilangan fail log nginx Firezone untuk disimpan sebelum dibuang. | 10 |
lalai['firezone']['nginx']['log_x_forwarded_for'] | Sama ada hendak log Firezone nginx x-forwarded-for header. | TRUE |
lalai['firezone']['nginx']['hsts_header']['enabled'] | TRUE | |
lalai['firezone']['nginx']['hsts_header']['include_subdomains'] | Dayakan atau lumpuhkan includeSubDomains untuk pengepala HSTS. | TRUE |
lalai['firezone']['nginx']['hsts_header']['max_age'] | Umur maksimum untuk pengepala HSTS. | 31536000 |
lalai['firezone']['nginx']['redirect_to_canonical'] | Sama ada hendak mengubah hala URL ke FQDN berkanun yang dinyatakan di atas | SALAH |
lalai['firezone']['nginx']['cache']['enabled'] | Dayakan atau lumpuhkan cache nginx Firezone. | SALAH |
lalai['firezone']['nginx']['cache']['direktori'] | Direktori untuk cache nginx Firezone. | “#{node['firezone']['var_directory']}/nginx/cache” |
lalai['firezone']['nginx']['user'] | Pengguna nginx Firezone. | nod['firezone']['user'] |
lalai['firezone']['nginx']['group'] | Kumpulan nginx Firezone. | nod['firezone']['group'] |
lalai['firezone']['nginx']['dir'] | Direktori konfigurasi nginx peringkat atas. | nod['firezone']['nginx']['direktori'] |
lalai['firezone']['nginx']['log_dir'] | Direktori log nginx peringkat atas. | nod['firezone']['nginx']['log_directory'] |
lalai['firezone']['nginx']['pid'] | Lokasi untuk fail nginx pid. | “#{node['firezone']['nginx']['directory']}/nginx.pid” |
lalai['firezone']['nginx']['daemon_disable'] | Lumpuhkan mod daemon nginx supaya kami boleh memantaunya. | TRUE |
lalai['firezone']['nginx']['gzip'] | Hidupkan atau matikan mampatan nginx gzip. | pada ' |
lalai['firezone']['nginx']['gzip_static'] | Hidupkan atau matikan mampatan nginx gzip untuk fail statik. | off' |
lalai['firezone']['nginx']['gzip_http_version'] | Versi HTTP untuk digunakan untuk menyampaikan fail statik. | 1.0 ' |
lalai['firezone']['nginx']['gzip_comp_level'] | tahap mampatan nginx gzip. | 2 ' |
lalai['firezone']['nginx']['gzip_proxied'] | Mendayakan atau melumpuhkan gzip respons untuk permintaan proksi bergantung pada permintaan dan respons. | mana-mana' |
lalai['firezone']['nginx']['gzip_vary'] | Mendayakan atau melumpuhkan memasukkan pengepala respons "Vary: Accept-Encoding". | off' |
lalai['firezone']['nginx']['gzip_buffers'] | Menetapkan bilangan dan saiz penimbal yang digunakan untuk memampatkan respons. Jika tiada, nginx lalai digunakan. | tiada |
lalai['firezone']['nginx']['gzip_types'] | Jenis MIME untuk membolehkan pemampatan gzip. | ['text/plain', 'text/css','application/x-javascript', 'text/xml', 'application/xml', 'application/rss+xml', 'application/atom+xml', ' text/javascript', 'application/javascript', 'application/json'] |
lalai['firezone']['nginx']['gzip_min_length'] | Panjang fail minimum untuk mendayakan pemampatan gzip fail. | 1000 |
lalai['firezone']['nginx']['gzip_disable'] | Pencocokan ejen pengguna untuk melumpuhkan pemampatan gzip. | MSIE [1-6]\.' |
lalai['firezone']['nginx']['keepalive'] | Mengaktifkan cache untuk sambungan ke pelayan huluan. | pada ' |
lalai['firezone']['nginx']['keepalive_timeout'] | Tamat masa dalam beberapa saat untuk sambungan keepalive ke pelayan huluan. | 65 |
lalai['firezone']['nginx']['worker_processes'] | Bilangan proses pekerja nginx. | nod['cpu'] && node['cpu']['total'] ? nod['cpu']['jumlah'] : 1 |
lalai['firezone']['nginx']['worker_connections'] | Bilangan maksimum sambungan serentak yang boleh dibuka oleh proses pekerja. | 1024 |
lalai['firezone']['nginx']['worker_rlimit_nofile'] | Menukar had bilangan maksimum fail terbuka untuk proses pekerja. Menggunakan nginx lalai jika tiada. | tiada |
lalai['firezone']['nginx']['multi_accept'] | Sama ada pekerja harus menerima satu sambungan pada satu masa atau berbilang. | TRUE |
lalai['firezone']['nginx']['event'] | Menentukan kaedah pemprosesan sambungan untuk digunakan dalam konteks acara nginx. | epoll' |
lalai['firezone']['nginx']['server_tokens'] | Mendayakan atau melumpuhkan pemancaran versi nginx pada halaman ralat dan dalam medan pengepala respons "Pelayan". | tiada |
lalai['firezone']['nginx']['server_names_hash_bucket_size'] | Menetapkan saiz baldi untuk jadual cincang nama pelayan. | 64 |
lalai['firezone']['nginx']['sendfile'] | Mendayakan atau melumpuhkan penggunaan sendfile() nginx. | pada ' |
lalai['firezone']['nginx']['access_log_options'] | Menetapkan pilihan log akses nginx. | tiada |
lalai['firezone']['nginx']['error_log_options'] | Menetapkan pilihan log ralat nginx. | tiada |
lalai['firezone']['nginx']['disable_access_log'] | Melumpuhkan log akses nginx. | SALAH |
lalai['firezone']['nginx']['types_hash_max_size'] | saiz maks hash jenis nginx. | 2048 |
lalai['firezone']['nginx']['types_hash_bucket_size'] | saiz baldi hash jenis nginx. | 64 |
lalai['firezone']['nginx']['proxy_read_timeout'] | tamat masa baca proksi nginx. Tetapkan kepada nil untuk menggunakan nginx lalai. | tiada |
lalai['firezone']['nginx']['client_body_buffer_size'] | saiz penimbal badan klien nginx. Tetapkan kepada nil untuk menggunakan nginx lalai. | tiada |
lalai['firezone']['nginx']['client_max_body_size'] | saiz badan maksimum pelanggan nginx. | 250m' |
lalai['firezone']['nginx']['default']['modul'] | Tentukan modul nginx tambahan. | [] |
lalai['firezone']['nginx']['enable_rate_limiting'] | Dayakan atau lumpuhkan pengehadan kadar nginx. | TRUE |
lalai['firezone']['nginx']['rate_limiting_zone_name'] | Nama zon mengehadkan kadar Nginx. | zon kebakaran' |
lalai['firezone']['nginx']['rate_limiting_backoff'] | Pengunduran mengehadkan kadar Nginx. | 10m' |
lalai['firezone']['nginx']['rate_limit'] | Had kadar Nginx. | 10r/s' |
lalai['firezone']['nginx']['ipv6'] | Benarkan nginx mendengar permintaan HTTP untuk IPv6 sebagai tambahan kepada IPv4. | TRUE |
lalai['firezone']['postgresql']['enabled'] | Dayakan atau lumpuhkan Postgresql yang digabungkan. Tetapkan kepada palsu dan isikan pilihan pangkalan data di bawah untuk menggunakan contoh Postgresql anda sendiri. | TRUE |
lalai['firezone']['postgresql']['username'] | Nama pengguna untuk Postgresql. | nod['firezone']['user'] |
lalai['firezone']['postgresql']['data_directory'] | Direktori data Postgresql. | “#{node['firezone']['var_directory']}/postgresql/13.3/data” |
lalai['firezone']['postgresql']['log_directory'] | Direktori log Postgresql. | “#{node['firezone']['log_directory']}/postgresql” |
lalai['firezone']['postgresql']['log_rotation']['file_maxbait'] | Saiz maksimum fail log Postgresql sebelum ia diputar. | 104857600 |
lalai['firezone']['postgresql']['log_rotation']['num_to_keep'] | Bilangan fail log Postgresql untuk disimpan. | 10 |
lalai['firezone']['postgresql']['checkpoint_completion_target'] | Sasaran penyiapan pusat pemeriksaan Postgresql. | 0.5 |
lalai['firezone']['postgresql']['checkpoint_segments'] | Bilangan segmen pusat pemeriksaan Postgresql. | 3 |
lalai['firezone']['postgresql']['checkpoint_timeout'] | tamat masa pusat pemeriksaan Postgresql. | 5 minit' |
lalai['firezone']['postgresql']['checkpoint_warning'] | Masa amaran pusat pemeriksaan Postgresql dalam beberapa saat. | 30-an |
lalai['firezone']['postgresql']['effective_cache_size'] | Saiz cache berkesan Postgresql. | 128MB' |
lalai['firezone']['postgresql']['listen_address'] | Alamat dengar Postgresql. | 127.0.0.1 ' |
lalai['firezone']['postgresql']['max_connections'] | Sambungan maks Postgresql. | 350 |
lalai['firezone']['postgresql']['md5_auth_cidr_addresses'] | CIDR Postgresql untuk membenarkan pengesahan md5. | ['127.0.0.1/32', '::1/128'] |
lalai['firezone']['postgresql']['port'] | Port mendengar Postgresql. | 15432 |
lalai['firezone']['postgresql']['shared_buffers'] | Saiz penimbal dikongsi Postgresql. | “#{(nod['memory']['total'].to_i / 4) / 1024}MB” |
lalai['firezone']['postgresql']['shmmax'] | Postgresql shmmax dalam bait. | 17179869184 |
lalai['firezone']['postgresql']['shmall'] | Postgresql shmall dalam bait. | 4194304 |
lalai['firezone']['postgresql']['work_mem'] | Saiz memori kerja Postgresql. | 8MB' |
lalai['firezone']['database']['user'] | Menentukan nama pengguna yang akan digunakan Firezone untuk menyambung ke DB. | node['firezone']['postgresql']['username'] |
lalai['firezone']['pangkalan data']['kata laluan'] | Jika menggunakan DB luaran, tentukan kata laluan yang akan digunakan Firezone untuk menyambung ke DB. | ubah saya' |
lalai['firezone']['database']['name'] | Pangkalan data yang akan digunakan oleh Firezone. Akan dibuat jika ia tidak wujud. | zon kebakaran' |
lalai['firezone']['database']['host'] | Hos pangkalan data yang akan disambungkan oleh Firezone. | nod['firezone']['postgresql']['listen_address'] |
lalai['firezone']['database']['port'] | Port pangkalan data yang akan disambungkan oleh Firezone. | nod['firezone']['postgresql']['port'] |
lalai['firezone']['database']['pool'] | Saiz kolam pangkalan data Firezone akan digunakan. | [10, Dsb.npemproses]. maks |
lalai['firezone']['database']['ssl'] | Sama ada untuk menyambung ke pangkalan data melalui SSL. | SALAH |
lalai['firezone']['database']['ssl_opts'] | {} | |
lalai['firezone']['pangkalan data']['parameter'] | {} | |
lalai['firezone']['database']['extensions'] | Sambungan pangkalan data untuk membolehkan. | { 'plpgsql' => benar, 'pg_trgm' => benar } |
lalai['firezone']['phoenix']['enabled'] | Dayakan atau lumpuhkan aplikasi web Firezone. | TRUE |
lalai['firezone']['phoenix']['listen_address'] | Alamat mendengar aplikasi web Firezone. Ini akan menjadi alamat dengar huluan yang proksi nginx. | 127.0.0.1 ' |
lalai['firezone']['phoenix']['port'] | Port mendengar aplikasi web Firezone. Ini akan menjadi pelabuhan hulu yang proksi nginx. | 13000 |
lalai['firezone']['phoenix']['log_directory'] | Direktori log aplikasi web Firezone. | “#{node['firezone']['log_directory']}/phoenix” |
lalai['firezone']['phoenix']['log_rotation']['file_maxbait'] | Saiz fail log aplikasi web Firezone. | 104857600 |
lalai['firezone']['phoenix']['log_rotation']['num_to_keep'] | Bilangan fail log aplikasi web Firezone untuk disimpan. | 10 |
lalai['firezone']['phoenix']['crash_detection']['enabled'] | Dayakan atau lumpuhkan menurunkan aplikasi web Firezone apabila ranap sistem dikesan. | TRUE |
lalai['firezone']['phoenix']['external_trusted_proxies'] | Senarai proksi songsang yang dipercayai diformatkan sebagai Tatasusunan IP dan/atau CIDR. | [] |
lalai['firezone']['phoenix']['private_clients'] | Senarai klien HTTP rangkaian peribadi, memformatkan Tatasusunan IP dan/atau CIDR. | [] |
lalai['firezone']['wireguard']['enabled'] | Dayakan atau lumpuhkan pengurusan WireGuard yang digabungkan. | TRUE |
lalai['firezone']['wireguard']['log_directory'] | Direktori log untuk pengurusan WireGuard yang digabungkan. | “#{node['firezone']['log_directory']}/wireguard" |
lalai['firezone']['wireguard']['log_rotation']['file_maxbait'] | Saiz maksimum fail log WireGuard. | 104857600 |
lalai['firezone']['wireguard']['log_rotation']['num_to_keep'] | Bilangan fail log WireGuard untuk disimpan. | 10 |
lalai['firezone']['wireguard']['interface_name'] | Nama antara muka WireGuard. Menukar parameter ini boleh menyebabkan kehilangan sementara dalam sambungan VPN. | wg-firezone' |
lalai['firezone']['wireguard']['port'] | WireGuard mendengar port. | 51820 |
lalai['firezone']['wireguard']['mtu'] | MTU antara muka WireGuard untuk pelayan ini dan untuk konfigurasi peranti. | 1280 |
lalai['firezone']['wireguard']['endpoint'] | WireGuard Endpoint untuk digunakan untuk menjana konfigurasi peranti. Jika tiada, lalai kepada alamat IP awam pelayan. | tiada |
lalai['firezone']['wireguard']['dns'] | WireGuard DNS untuk digunakan untuk konfigurasi peranti yang dijana. | 1.1.1.1, 1.0.0.1′ |
lalai['firezone']['wireguard']['allowed_ips'] | WireGuard AllowedIPs untuk digunakan untuk konfigurasi peranti yang dijana. | 0.0.0.0/0, ::/0′ |
lalai['firezone']['wireguard']['persistent_keepalive'] | Tetapan PersistentKeepalive lalai untuk konfigurasi peranti yang dijana. Nilai 0 melumpuhkan. | 0 |
lalai['firezone']['wireguard']['ipv4']['enabled'] | Dayakan atau lumpuhkan IPv4 untuk rangkaian WireGuard. | TRUE |
lalai['firezone']['wireguard']['ipv4']['masquerade'] | Dayakan atau lumpuhkan penyamaran untuk paket yang meninggalkan terowong IPv4. | TRUE |
lalai['firezone']['wireguard']['ipv4']['network'] | Kumpulan alamat IPv4 rangkaian WireGuard. | 10.3.2.0/24 ′ |
lalai['firezone']['wireguard']['ipv4']['alamat'] | Alamat IPv4 antara muka WireGuard. Mesti berada dalam kumpulan alamat WireGuard. | 10.3.2.1 ' |
lalai['firezone']['wireguard']['ipv6']['enabled'] | Dayakan atau lumpuhkan IPv6 untuk rangkaian WireGuard. | TRUE |
lalai['firezone']['wireguard']['ipv6']['masquerade'] | Dayakan atau lumpuhkan penyamaran untuk paket yang meninggalkan terowong IPv6. | TRUE |
lalai['firezone']['wireguard']['ipv6']['network'] | Kumpulan alamat IPv6 rangkaian WireGuard. | fd00::3:2:0/120′ |
lalai['firezone']['wireguard']['ipv6']['alamat'] | Alamat IPv6 antara muka WireGuard. Mesti berada dalam kumpulan alamat IPv6. | fd00::3:2:1′ |
lalai['firezone']['runit']['svlogd_bin'] | Lokasi bin Rinit svlogd. | “#{node['firezone']['install_directory']}/embedded/bin/svlogd” |
lalai['firezone']['ssl']['direktori'] | Direktori SSL untuk menyimpan sijil yang dijana. | /var/opt/firezone/ssl' |
lalai['firezone']['ssl']['email_address'] | Alamat e-mel untuk digunakan untuk sijil yang ditandatangani sendiri dan notis pembaharuan protokol ACME. | you@example.com' |
lalai['firezone']['ssl']['acme']['enabled'] | Dayakan ACME untuk peruntukan sijil SSL automatik. Lumpuhkan ini untuk menghalang Nginx daripada mendengar pada port 80. Lihat di sini untuk lebih banyak arahan. | SALAH |
lalai['firezone']['ssl']['acme']['server'] | penyahgaraman | |
lalai['firezone']['ssl']['acme']['keylength'] | Tentukan jenis dan panjang kunci untuk sijil SSL. Lihat di sini | Ec-256 |
lalai['firezone']['ssl']['sijil'] | Laluan ke fail sijil untuk FQDN anda. Mengatasi tetapan ACME di atas jika dinyatakan. Jika kedua-dua ACME dan ini adalah tiada sijil yang ditandatangani sendiri akan dihasilkan. | tiada |
lalai['firezone']['ssl']['certificate_key'] | Laluan ke fail sijil. | tiada |
lalai['firezone']['ssl']['ssl_dhparam'] | nginx ssl dh_param. | tiada |
lalai['firezone']['ssl']['country_name'] | Nama negara untuk sijil yang ditandatangani sendiri. | AS' |
lalai['firezone']['ssl']['state_name'] | Nyatakan nama untuk sijil yang ditandatangani sendiri. | CA ' |
lalai['firezone']['ssl']['locality_name'] | Nama lokaliti untuk sijil yang ditandatangani sendiri. | San Francisco' |
lalai['firezone']['ssl']['company_name'] | Sijil ditandatangani sendiri nama syarikat. | Syarikat saya' |
lalai['firezone']['ssl']['organizational_unit_name'] | Nama unit organisasi untuk sijil yang ditandatangani sendiri. | operasi' |
lalai['firezone']['ssl']['ciphers'] | Sifir SSL untuk digunakan nginx. | ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA’ |
lalai['firezone']['ssl']['fips_ciphers'] | Sifir SSL untuk mod FIP. | FIPS@STRENGTH:!aNULL:!eNULL' |
lalai['firezone']['ssl']['protocols'] | protokol TLS untuk digunakan. | TLSv1 TLSv1.1 TLSv1.2′ |
lalai['firezone']['ssl']['session_cache'] | Cache sesi SSL. | dikongsi:SSL:4m' |
lalai['firezone']['ssl']['session_timeout'] | tamat masa sesi SSL. | 5m' |
lalai['firezone']['robots_allow'] | robot nginx membenarkan. | /' |
lalai['firezone']['robots_disallow'] | robot nginx tidak membenarkan. | tiada |
lalai['firezone']['outbound_email']['from'] | E-mel keluar dari alamat. | tiada |
lalai['firezone']['outbound_email']['provider'] | Pembekal perkhidmatan e-mel keluar. | tiada |
lalai['firezone']['outbound_email']['configs'] | Konfigurasi pembekal e-mel keluar. | lihat omnibus/buku masakan/firezone/attributes/default.rb |
lalai['firezone']['telemetri']['didayakan'] | Dayakan atau lumpuhkan telemetri produk tanpa nama. | TRUE |
lalai['firezone']['connectivity_checks']['enabled'] | Dayakan atau lumpuhkan perkhidmatan semakan sambungan Firezone. | TRUE |
lalai['firezone']['connectivity_checks']['interval'] | Selang antara semakan ketersambungan dalam beberapa saat. | 3_600 |
________________________________________________________________
Di sini anda akan menemui senarai fail dan direktori yang berkaitan dengan pemasangan Firezone biasa. Ini boleh berubah bergantung pada perubahan pada fail konfigurasi anda.
jalan | Penerangan |
/var/opt/firezone | Direktori peringkat atas yang mengandungi data dan konfigurasi yang dijana untuk perkhidmatan gabungan Firezone. |
/opt/firezone | Direktori peringkat atas yang mengandungi perpustakaan terbina, binari dan fail masa jalan yang diperlukan oleh Firezone. |
/usr/bin/firezone-ctl | utiliti firezone-ctl untuk menguruskan pemasangan Firezone anda. |
/etc/systemd/system/firezone-runsvdir-start.service | fail unit systemd untuk memulakan proses penyelia runsvdir Firezone. |
/etc/firezone | Fail konfigurasi Firezone. |
__________________________________________________________
Halaman ini kosong dalam dokumen
_____________________________________________________________
Templat tembok api nftables berikut boleh digunakan untuk menjamin pelayan yang menjalankan Firezone. Templat membuat beberapa andaian; anda mungkin perlu melaraskan peraturan agar sesuai dengan kes penggunaan anda:
Firezone mengkonfigurasi peraturan nftables sendiri untuk membenarkan/menolak trafik ke destinasi yang dikonfigurasikan dalam antara muka web dan untuk mengendalikan NAT keluar untuk trafik pelanggan.
Menggunakan templat tembok api di bawah pada pelayan yang sudah berjalan (bukan pada masa but) akan menyebabkan peraturan Firezone dikosongkan. Ini mungkin mempunyai implikasi keselamatan.
Untuk mengatasi masalah ini mulakan semula perkhidmatan phoenix:
firezone-ctl mulakan semula phoenix
#!/usr/sbin/nft -f
## Kosongkan/siram semua peraturan sedia ada
set peraturan siram
################################## PEMBOLEH UBAH ################## ##############
## Nama antara muka Internet/WAN
takrifkan DEV_WAN = eth0
## Nama antara muka WireGuard
tentukan DEV_WIREGUARD = wg-firezone
## WireGuard mendengar port
takrifkan WIREGUARD_PORT = 51820
################################ PEMBOLEH UBAH TAMAT ################## ############
# Jadual penapisan keluarga inet utama
penapis inet jadual {
# Peraturan untuk trafik yang dimajukan
# Rantaian ini diproses sebelum rantaian hadapan Firezone
rantai ke hadapan {
taip penapis keutamaan cangkuk ke hadapan - 5; dasar terima
}
# Peraturan untuk trafik input
input rantai {
penapis keutamaan input cangkuk jenis penapis; kejatuhan dasar
## Benarkan trafik masuk ke antara muka gelung balik
kalau betul \
terima \
komen "Izinkan semua trafik masuk dari antara muka gelung balik"
## Permit diwujudkan dan sambungan yang berkaitan
ct negeri ditubuhkan, berkaitan \
terima \
komen "Permit diwujudkan/sambungan berkaitan"
## Benarkan trafik WireGuard masuk
iif $DEV_WAN udp dport $WIREGUARD_PORT \
kaunter \
terima \
komen "Izinkan lalu lintas WireGuard masuk"
## Log dan lepaskan paket TCP bukan SYN baharu
bendera tcp != syn ct state new \
kadar had 100/minit pecah 150 paket \
awalan log “IN – Baharu !SYN: “ \
komen “Pengelogan had kadar untuk sambungan baharu yang tidak mempunyai set bendera SYN TCP”
bendera tcp != syn ct state new \
kaunter \
jatuhkan \
komen "Lepaskan sambungan baharu yang tidak mempunyai set bendera SYN TCP"
## Log dan lepaskan paket TCP dengan set bendera sirip/syn yang tidak sah
bendera tcp & (fin|syn) == (fin|syn) \
kadar had 100/minit pecah 150 paket \
awalan log “IN – TCP FIN|SIN: “ \
komen “Pengelogan had kadar untuk paket TCP dengan set bendera sirip/syn tidak sah”
bendera tcp & (fin|syn) == (fin|syn) \
kaunter \
jatuhkan \
komen "Lepaskan paket TCP dengan set bendera sirip/syn tidak sah"
## Log dan lepaskan paket TCP dengan set bendera syn/pertama yang tidak sah
bendera tcp & (syn|rst) == (syn|rst) \
kadar had 100/minit pecah 150 paket \
awalan log “IN – TCP SYN|RST: “ \
komen “Pengelogan had kadar untuk paket TCP dengan set bendera syn/pertama yang tidak sah”
bendera tcp & (syn|rst) == (syn|rst) \
kaunter \
jatuhkan \
komen "Lepaskan paket TCP dengan set syn/bendera pertama yang tidak sah"
## Log dan lepaskan bendera TCP yang tidak sah
bendera tcp & (fin|syn|rst|psh|ack|urg) < (fin) \
kadar had 100/minit pecah 150 paket \
awalan log “IN – FIN:” \
komen “Pengelogan had kadar untuk bendera TCP tidak sah (fin|syn|rst|psh|ack|urg) < (fin)”
bendera tcp & (fin|syn|rst|psh|ack|urg) < (fin) \
kaunter \
jatuhkan \
komen “Lepaskan paket TCP dengan bendera (fin|syn|rst|psh|ack|urg) < (fin)”
## Log dan lepaskan bendera TCP yang tidak sah
bendera tcp & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
kadar had 100/minit pecah 150 paket \
awalan log “IN – FIN|PSH|URG:” \
komen “Pengelogan had kadar untuk bendera TCP tidak sah (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)”
bendera tcp & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
kaunter \
jatuhkan \
komen “Lepaskan paket TCP dengan bendera (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)”
## Jatuhkan trafik dengan keadaan sambungan tidak sah
keadaan ct tidak sah \
kadar had 100/minit pecah 150 paket \
bendera log semua awalan “DALAM – Tidak sah: “ \
komen “Pengelogan had kadar untuk trafik dengan keadaan sambungan tidak sah”
keadaan ct tidak sah \
kaunter \
jatuhkan \
komen "Lepaskan trafik dengan keadaan sambungan tidak sah"
## Benarkan respons ping/ping IPv4 tetapi had kadar kepada 2000 PPS
ip protokol icmp icmp type { echo-reply, echo-request } \
kadar had 2000/saat \
kaunter \
terima \
komen "Izinkan gema IPv4 masuk (ping) terhad kepada 2000 PPS"
## Benarkan semua ICMP IPv4 masuk lain
ip protokol icmp \
kaunter \
terima \
komen "Izinkan semua IPv4 ICMP lain"
## Benarkan respons ping/ping IPv6 tetapi had kadar kepada 2000 PPS
icmpv6 type { echo-reply, echo-request } \
kadar had 2000/saat \
kaunter \
terima \
komen "Izinkan gema IPv6 masuk (ping) terhad kepada 2000 PPS"
## Benarkan semua ICMP IPv6 masuk lain
meta l4proto { icmpv6 } \
kaunter \
terima \
komen "Izinkan semua IPv6 ICMP lain"
## Benarkan port UDP traceroute masuk tetapi hadkan kepada 500 PPS
udp dport 33434-33524 \
kadar had 500/saat \
kaunter \
terima \
komen "Permit UDP traceroute masuk terhad kepada 500 PPS"
## Benarkan SSH masuk
tcp dport ssh ct negeri baru \
kaunter \
terima \
komen "Izinkan sambungan SSH masuk"
## Benarkan HTTP dan HTTPS masuk
tcp dport { http, https } ct keadaan baharu \
kaunter \
terima \
komen "Izinkan sambungan HTTP dan HTTPS masuk"
## Log sebarang trafik yang tidak sepadan tetapi kadar pengelogan had kepada maksimum 60 mesej/minit
## Dasar lalai akan digunakan pada trafik yang tidak sepadan
kadar had 60/minit pecah 100 paket \
awalan log “DALAM – Jatuhkan: “ \
komen “Log sebarang trafik yang tidak sepadan”
## Kira trafik yang tiada tandingan
kaunter \
komen “Kira mana-mana trafik yang tiada tandingan”
}
# Peraturan untuk trafik output
keluaran rantai {
jenis penapis cangkuk keluaran penapis keutamaan; kejatuhan dasar
## Benarkan trafik keluar ke antara muka gelung balik
oif lo
terima \
komen "Izinkan semua trafik keluar ke antara muka gelung balik"
## Permit diwujudkan dan sambungan yang berkaitan
ct negeri ditubuhkan, berkaitan \
kaunter \
terima \
komen "Permit diwujudkan/sambungan berkaitan"
## Benarkan trafik WireGuard keluar sebelum memutuskan sambungan dengan keadaan buruk
oif $DEV_WAN sukan udp $WIREGUARD_PORT \
kaunter \
terima \
komen “Izinkan trafik keluar WireGuard”
## Jatuhkan trafik dengan keadaan sambungan tidak sah
keadaan ct tidak sah \
kadar had 100/minit pecah 150 paket \
bendera log semua awalan “KELUAR – Tidak sah: “ \
komen “Pengelogan had kadar untuk trafik dengan keadaan sambungan tidak sah”
keadaan ct tidak sah \
kaunter \
jatuhkan \
komen "Lepaskan trafik dengan keadaan sambungan tidak sah"
## Benarkan semua ICMP IPv4 keluar lain
ip protokol icmp \
kaunter \
terima \
komen "Izinkan semua jenis IPv4 ICMP"
## Benarkan semua ICMP IPv6 keluar lain
meta l4proto { icmpv6 } \
kaunter \
terima \
komen "Izinkan semua jenis IPv6 ICMP"
## Benarkan port UDP traceroute keluar tetapi hadkan kepada 500 PPS
udp dport 33434-33524 \
kadar had 500/saat \
kaunter \
terima \
komen "Permit laluan penjejak UDP keluar terhad kepada 500 PPS"
## Benarkan sambungan HTTP dan HTTPS keluar
tcp dport { http, https } ct keadaan baharu \
kaunter \
terima \
komen "Izinkan sambungan HTTP dan HTTPS keluar"
## Benarkan penyerahan SMTP keluar
penyerahan tcp dport ct keadaan baharu \
kaunter \
terima \
komen "Izinkan penyerahan SMTP keluar"
## Benarkan permintaan DNS keluar
udp dport 53 \
kaunter \
terima \
komen "Izinkan permintaan DNS UDP keluar"
tcp dport 53 \
kaunter \
terima \
komen "Izinkan permintaan DNS TCP keluar"
## Benarkan permintaan NTP keluar
udp dport 123 \
kaunter \
terima \
komen "Izinkan permintaan NTP keluar"
## Log sebarang trafik yang tidak sepadan tetapi kadar pengelogan had kepada maksimum 60 mesej/minit
## Dasar lalai akan digunakan pada trafik yang tidak sepadan
kadar had 60/minit pecah 100 paket \
awalan log “KELUAR – Jatuhkan:” \
komen “Log sebarang trafik yang tidak sepadan”
## Kira trafik yang tiada tandingan
kaunter \
komen “Kira mana-mana trafik yang tiada tandingan”
}
}
# Jadual penapisan NAT utama
jadual inet nat {
# Peraturan untuk pra penghalaan trafik NAT
pra laluan rantai {
taip nat hook prerouting priority dstnat; dasar terima
}
# Peraturan untuk laluan pasca lalu lintas NAT
# Jadual ini diproses sebelum rantaian pasca penghalaan Firezone
rantai postrouting {
taip nat hook postrouting priority srcnat – 5; dasar terima
}
}
Firewall harus disimpan di lokasi yang berkaitan untuk pengedaran Linux yang sedang berjalan. Untuk Debian/Ubuntu ini ialah /etc/nftables.conf dan untuk RHEL ini ialah /etc/sysconfig/nftables.conf.
nftables.service perlu dikonfigurasikan untuk bermula pada but (jika belum) ditetapkan:
systemctl membolehkan nftables.service
Jika membuat sebarang perubahan pada templat firewall, sintaks boleh disahkan dengan menjalankan arahan semak:
nft -f /path/to/nftables.conf -c
Pastikan anda mengesahkan tembok api berfungsi seperti yang diharapkan kerana ciri nftables tertentu mungkin tidak tersedia bergantung pada keluaran yang dijalankan pada pelayan.
_______________________________________________________________
Dokumen ini membentangkan gambaran keseluruhan telemetri Firezone yang dikumpulkan daripada contoh yang dihoskan sendiri dan cara untuk melumpuhkannya.
Zon Kebakaran kemudiannya dipasang pada telemetri untuk mengutamakan pelan hala tuju kami dan mengoptimumkan sumber kejuruteraan yang kami ada untuk menjadikan Firezone lebih baik untuk semua orang.
Telemetri yang kami kumpulkan bertujuan untuk menjawab soalan berikut:
Terdapat tiga tempat utama di mana telemetri dikumpulkan di Firezone:
Dalam setiap tiga konteks ini, kami menangkap jumlah minimum data yang diperlukan untuk menjawab soalan dalam bahagian di atas.
E-mel pentadbir dikumpulkan hanya jika anda secara eksplisit ikut serta dalam kemas kini produk. Jika tidak, maklumat yang boleh dikenal pasti secara peribadi adalah pernah dikumpulkan.
Firezone menyimpan telemetri dalam contoh PostHog yang dihoskan sendiri yang berjalan dalam kelompok Kubernetes peribadi, hanya boleh diakses oleh pasukan Firezone. Berikut ialah contoh acara telemetri yang dihantar daripada tika Firezone anda ke pelayan telemetri kami:
{
"ID": “0182272d-0b88-0000-d419-7b9a413713f1”,
“cap masa”: “2022-07-22T18:30:39.748000+00:00”,
“acara”: “fz_http_started”,
“id_distinct”: “1ec2e794-1c3e-43fc-a78f-1db6d1a37f54”,
“harta benda”{
“$geoip_city_name”: “Ashburn”,
“$geoip_continent_code”: “NA”,
“$geoip_continent_name”: "Amerika Utara",
“$geoip_country_code”: “AS”,
“$geoip_country_name”: "Amerika Syarikat",
“$geoip_latitude”: 39.0469,
“$geoip_longitude”: -77.4903,
“$geoip_postal_code”: "20149",
“$geoip_subdivision_1_code”: “VA”,
“$geoip_subdivision_1_name”: “Virginia”,
“$geoip_time_zone”: “Amerika/New_York”,
“$ip”: "52.200.241.107",
“$plugins_deferred”: [],
“$plugins_failed”: [],
“$plugins_succeeded”: [
“GeoIP (3)”
],
“id_distinct”: “1zc2e794-1c3e-43fc-a78f-1db6d1a37f54”,
“fqdn”: “awsdemo.firezone.dev”,
“kernel_version”: “linux 5.13.0”,
"versi": "0.4.6"
},
“rantai_unsur”: ""
}
NOTA
Pasukan pembangunan Firezone kemudiannya dipasang pada analisis produk untuk menjadikan Firezone lebih baik untuk semua orang. Membiarkan telemetri didayakan adalah satu-satunya sumbangan paling berharga yang boleh anda berikan kepada pembangunan Firezone. Walau bagaimanapun, kami memahami sesetengah pengguna mempunyai keperluan privasi atau keselamatan yang lebih tinggi dan lebih suka untuk melumpuhkan telemetri sama sekali. Jika itu anda, teruskan membaca.
Telemetri didayakan secara lalai. Untuk melumpuhkan sepenuhnya telemetri produk, tetapkan pilihan konfigurasi berikut kepada palsu dalam /etc/firezone/firezone.rb dan jalankan sudo firezone-ctl reconfigure untuk mengambil perubahan.
lalai['firezone']['telemetri']['didayakan'] = palsu
Itu akan melumpuhkan sepenuhnya semua telemetri produk.
Hailbytes
9511 Queens Guard Ct.
Laurel, MD 20723
Telefon: (732) 771-9995
E-mel: info@hailbytes.com
Terima berita keselamatan siber terkini terus dalam peti masuk anda.