Navodila po korakih za uvajanje Hailbytes VPN z grafičnim vmesnikom Firezone so na voljo tukaj.
Skrbnik: nastavitev primerka strežnika je neposredno povezana s tem delom.
Uporabniški priročniki: koristni dokumenti, ki vas lahko naučijo, kako uporabljati Firezone in reševati tipične težave. Ko je strežnik uspešno nameščen, si oglejte ta razdelek.
Razdeljeno tuneliranje: uporabite VPN samo za pošiljanje prometa na določena območja IP.
Seznam dovoljenih: Nastavite statični naslov IP strežnika VPN, če želite uporabiti seznam dovoljenih.
Povratni tuneli: ustvarite predore med več enakovrednimi napravami z uporabo povratnih predorov.
Z veseljem vam pomagamo, če potrebujete pomoč pri namestitvi, prilagajanju ali uporabi Hailbytes VPN.
Preden lahko uporabniki ustvarijo ali prenesejo konfiguracijske datoteke naprave, je mogoče Firezone konfigurirati tako, da zahteva preverjanje pristnosti. Uporabniki bodo morda morali tudi občasno znova preverjati pristnost, da ohranijo svojo povezavo VPN aktivno.
Čeprav je privzeti način prijave Firezone lokalni e-poštni naslov in geslo, ga je mogoče integrirati tudi s katerim koli standardiziranim ponudnikom identitete OpenID Connect (OIDC). Uporabniki se zdaj lahko prijavijo v Firezone s svojimi poverilnicami Okta, Google, Azure AD ali ponudnika zasebnih identitet.
Integrirajte generičnega ponudnika OIDC
Konfiguracijski parametri, ki jih Firezone potrebuje za omogočanje SSO z uporabo ponudnika OIDC, so prikazani v spodnjem primeru. Na /etc/firezone/firezone.rb boste morda našli konfiguracijsko datoteko. Zaženite firezone-ctl reconfigure in firezone-ctl restart, da posodobite aplikacijo in začnete veljati spremembe.
# To je primer uporabe Googla in Okte kot ponudnika identitete SSO.
# Več konfiguracij OIDC je mogoče dodati istemu primerku Firezone.
# Firezone lahko onemogoči uporabnikov VPN, če je pri poskusu odkrita kakršna koli napaka
# za osvežitev njihovega access_token. Preverjeno deluje za Google, Okta in
# Azure SSO in se uporablja za samodejno prekinitev povezave z VPN uporabnika, če je odstranjen
# od ponudnika OIDC. Pustite to onemogočeno, če je vaš ponudnik OIDC
# ima težave z osveževanjem žetonov za dostop, saj lahko nepričakovano prekine a
# seja VPN uporabnika.
privzeto['firezone']['authentication']['disable_vpn_on_oidc_error'] = false
default['firezone']['authentication']['oidc'] = {
google: {
discovery_document_uri: “https://accounts.google.com/.well-known/openid-configuration”,
client_id: “ «,
client_secret: “ «,
redirect_uri: “https://instance-id.yourfirezone.com/auth/oidc/google/callback/”,
response_type: “koda”,
obseg: "odprt e-poštni profil",
oznaka: "Google"
},
okta: {
discovery_document_uri: “https:// /.well-known/openid-configuration”,
client_id: “ «,
client_secret: “ «,
redirect_uri: “https://instance-id.yourfirezone.com/auth/oidc/okta/callback/”,
response_type: “koda”,
obseg: “odprti e-poštni profil offline_access”,
oznaka: “Okta”
}
}
Za integracijo so potrebne naslednje nastavitve konfiguracije:
Za vsakega ponudnika OIDC je ustvarjen ustrezen lep URL za preusmeritev na URL za prijavo konfiguriranega ponudnika. Za zgornji primer konfiguracije OIDC so URL-ji:
Ponudniki, za katere imamo dokumentacijo:
Če ima vaš ponudnik identitete generični priključek OIDC in ni naveden zgoraj, pojdite v njegovo dokumentacijo za informacije o tem, kako pridobiti potrebne konfiguracijske nastavitve.
Nastavitev pod nastavitvami/varnostjo lahko spremenite tako, da zahteva redno ponovno preverjanje pristnosti. To se lahko uporabi za uveljavitev zahteve, da uporabniki redno vstopijo v Firezone, da lahko nadaljujejo sejo VPN.
Dolžino seje lahko konfigurirate med eno uro in devetdesetimi dnevi. Če to nastavite na Nikoli, lahko kadar koli omogočite seje VPN. To je standard.
Uporabnik mora prekiniti svojo sejo VPN in se prijaviti na portal Firezone, da ponovno preveri pristnost potekle seje VPN (URL, določen med uvedbo).
Svojo sejo lahko znova preverite tako, da sledite natančnim navodilom odjemalca, ki jih najdete tukaj.
Stanje povezave VPN
Stolpec tabele povezav VPN na strani Uporabniki prikazuje stanje povezave uporabnika. To so stanja povezave:
ENABLED – povezava je omogočena.
ONEMOGOČENO – Povezavo je onemogočil skrbnik ali napaka pri osveževanju OIDC.
POTEKLO – Povezava je onemogočena zaradi poteka avtentikacije ali pa se uporabnik ni prijavil prvič.
Prek splošnega priključka OIDC Firezone omogoča enotno prijavo (SSO) z Google Workspace in Cloud Identity. Ta vodnik vam bo pokazal, kako pridobiti konfiguracijske parametre, navedene spodaj, ki so potrebni za integracijo:
1. Konfiguracijski zaslon OAuth,war
Če prvič ustvarjate nov ID odjemalca OAuth, boste pozvani, da konfigurirate zaslon za soglasje.
*Za vrsto uporabnika izberite Notranji. To zagotavlja, da lahko samo računi, ki pripadajo uporabnikom v vaši organizaciji Google Workspace, ustvarjajo konfiguracije naprave. NE izberite Zunanji, razen če želite omogočiti vsakomur z veljavnim Google Računom ustvarjanje konfiguracij naprave.
Na zaslonu z informacijami o aplikaciji:
2. Ustvarite ID-je odjemalca OAuth,war
Ta razdelek temelji na Googlovi lastni dokumentaciji o nastavitev OAuth 2.0.
Obiščite Google Cloud Console Stran s poverilnicami kliknite + Ustvari poverilnice in izberite ID odjemalca OAuth.
Na zaslonu za ustvarjanje ID-ja odjemalca OAuth:
Ko ustvarite ID odjemalca OAuth, boste prejeli ID odjemalca in skrivnost odjemalca. Ti bodo uporabljeni skupaj z URI preusmeritve v naslednjem koraku.
Uredi /etc/firezone/firezone.rb da vključite spodnje možnosti:
# Uporaba Googla kot ponudnika identitete SSO
default['firezone']['authentication']['oidc'] = {
google: {
discovery_document_uri: “https://accounts.google.com/.well-known/openid-configuration”,
client_id: “ «,
client_secret: “ «,
redirect_uri: “https://instance-id.yourfirezone.com/auth/oidc/google/callback/”,
response_type: “koda”,
obseg: "odprt e-poštni profil",
oznaka: "Google"
}
}
Zaženite firezone-ctl reconfigure in firezone-ctl restart, da posodobite aplikacijo. Zdaj bi morali videti gumb Prijava z Googlom na korenskem URL-ju Firezone.
Firezone uporablja generični priključek OIDC za olajšanje enotne prijave (SSO) z Okto. Ta vadnica vam bo pokazala, kako pridobiti konfiguracijske parametre, navedene spodaj, ki so potrebni za integracijo:
Ta del vodnika temelji na Oktina dokumentacija.
V skrbniški konzoli pojdite na Aplikacije > Aplikacije in kliknite Ustvari integracijo aplikacije. Nastavite način prijave na OICD – OpenID Connect in vrsto aplikacije na spletno aplikacijo.
Konfigurirajte te nastavitve:
Ko so nastavitve shranjene, boste prejeli ID stranke, skrivnost stranke in domeno Okta. Te 3 vrednosti bodo uporabljene v 2. koraku za konfiguracijo Firezone.
Uredi /etc/firezone/firezone.rb da vključite spodnje možnosti. Vaš odkriti_dokument_url bo /.well-known/openid-configuration pripeto na konec vašega okta_domain.
# Uporaba Okte kot ponudnika identitete SSO
default['firezone']['authentication']['oidc'] = {
okta: {
discovery_document_uri: “https:// /.well-known/openid-configuration”,
client_id: “ «,
client_secret: “ «,
redirect_uri: “https://instance-id.yourfirezone.com/auth/oidc/okta/callback/”,
response_type: “koda”,
obseg: “odprti e-poštni profil offline_access”,
oznaka: “Okta”
}
}
Zaženite firezone-ctl reconfigure in firezone-ctl restart, da posodobite aplikacijo. Zdaj bi morali videti gumb Prijava z Okta na korenskem URL-ju Firezone.
Uporabnike, ki lahko dostopajo do aplikacije Firezone, lahko Okta omeji. Pojdite na stran z dodelitvami integracije aplikacije Firezone v skrbniški konzoli Okta, da to dosežete.
Prek generičnega priključka OIDC Firezone omogoča enotno prijavo (SSO) z Azure Active Directory. Ta priročnik vam bo pokazal, kako pridobiti konfiguracijske parametre, navedene spodaj, ki so potrebni za integracijo:
Ta vodnik je vzet iz Dokumenti Azure Active Directory.
Pojdite na stran Azure Active Directory portala Azure. Izberite možnost menija Upravljanje, izberite Nova registracija in se nato registrirajte tako, da vnesete spodnje podatke:
Po registraciji odprite pogled podrobnosti aplikacije in kopirajte ID aplikacije (odjemalca).. To bo vrednost client_id. Nato odprite meni končnih točk, da pridobite Dokument z metapodatki OpenID Connect. To bo vrednost discovery_document_uri.
Ustvarite novo skrivnost odjemalca tako, da v meniju Upravljanje kliknete možnost Potrdila in skrivnosti. Kopirajte skrivnost odjemalca; skrivna vrednost odjemalca bo to.
Na koncu izberite povezavo dovoljenj API-ja v meniju Upravljanje, kliknite Dodajte dovoljenjein izberite Microsoft Graph, Dodaj E-naslov, openid, dostop brez povezave in profil do zahtevanih dovoljenj.
Uredi /etc/firezone/firezone.rb da vključite spodnje možnosti:
# Uporaba Azure Active Directory kot ponudnika identitete SSO
default['firezone']['authentication']['oidc'] = {
azurno: {
discovery_document_uri: “https://login.microsoftonline.com/ /v2.0/.well-known/openid-configuration”,
client_id: “ «,
client_secret: “ «,
redirect_uri: “https://instance-id.yourfirezone.com/auth/oidc/azure/callback/”,
response_type: “koda”,
obseg: “odprti e-poštni profil offline_access”,
oznaka: "Azure"
}
}
Zaženite firezone-ctl reconfigure in firezone-ctl restart, da posodobite aplikacijo. Zdaj bi morali videti gumb Prijava z Azure na korenskem URL-ju Firezone.
Azure AD omogoča skrbnikom, da omejijo dostop do aplikacije na določeno skupino uporabnikov v vašem podjetju. Več informacij o tem, kako to storite, najdete v Microsoftovi dokumentaciji.
Firezone uporablja Chef Omnibus za upravljanje nalog, vključno s pakiranjem za sprostitev, nadzorovanjem procesov, upravljanjem dnevnikov in več.
Koda Ruby sestavlja primarno konfiguracijsko datoteko, ki se nahaja na /etc/firezone/firezone.rb. Ponovni zagon sudo firezone-ctl reconfigure po spremembi te datoteke povzroči, da Chef prepozna spremembe in jih uporabi v trenutnem operacijskem sistemu.
Za celoten seznam konfiguracijskih spremenljivk in njihovih opisov glejte referenco konfiguracijske datoteke.
Svojo instanco Firezone lahko upravljate prek firezone-ctl ukaz, kot je prikazano spodaj. Večina podukazov zahteva predpono z sudo.
root@demo:~# firezone-ctl
omnibus-ctl: ukaz (podukaz)
Splošni ukazi:
osvoboditi
Izbrišite *vse* podatke firezone in začnite od začetka.
create-or-reset-admin
Ponastavi geslo za skrbnika s privzeto določenim e-poštnim naslovom ['firezone']['admin_email'] ali ustvari novega skrbnika, če ta e-poštni naslov ne obstaja.
pomoč
Natisnite to sporočilo pomoči.
rekonfiguracija
Ponovno konfigurirajte aplikacijo.
ponastavitev omrežja
Ponastavi nftables, vmesnik WireGuard in usmerjevalno tabelo nazaj na privzete nastavitve Firezone.
show-config
Pokažite konfiguracijo, ki bi bila ustvarjena z reconfigure.
teardown-omrežje
Odstrani vmesnik WireGuard in tabelo nftables firezone.
force-cert-renewal
Vsili obnovitev potrdila zdaj, tudi če še ni poteklo.
stop-cert-obnova
Odstrani cronjob, ki obnavlja potrdila.
odstrani
Ubijte vse procese in odstranite nadzornika procesov (podatki bodo ohranjeni).
različica
Prikaži trenutno različico Firezone
Ukazi za upravljanje storitve:
graceful-kill
Poskusite elegantno ustaviti, nato SIGKILL celotno procesno skupino.
hup
Storitvam pošljite HUP.
int
Storitvam pošljite INT.
ubiti
Pošljite storitve KILL.
enkrat
Zaženite storitve, če ne delujejo. Ne zaženite jih znova, če se ustavijo.
restart
Ustavite storitve, če se izvajajo, nato pa jih znova zaženite.
servisni seznam
Seznam vseh storitev (omogočene storitve so prikazane z *.)
Začetek
Zaženite storitve, če ne delujejo, in jih znova zaženite, če se ustavijo.
Status
Prikaži stanje vseh storitev.
stop
Zaustavite storitve in jih ne zaganjajte znova.
rep
Oglejte si dnevnike storitev vseh omogočenih storitev.
Izraz
Storitvam pošljite POGOJ.
usr1
Storitvam pošljite USR1.
usr2
Storitvam pošljite USR2.
Vse seje VPN je treba prekiniti pred nadgradnjo Firezone, ki zahteva tudi zaustavitev spletnega uporabniškega vmesnika. V primeru, da gre med nadgradnjo kaj narobe, svetujemo, da si vzamete eno uro za vzdrževanje.
Če želite izboljšati Firezone, naredite naslednje:
Če pride do težav, nas obvestite do oddaja vozovnice za podporo.
V 0.5.0 je nekaj zlomljivih sprememb in konfiguracijskih modifikacij, ki jih je treba obravnavati. Več o tem spodaj.
Nginx od različice 0.5.0 naprej ne podpira več parametrov force SSL in non-SSL port. Ker Firezone za delovanje potrebuje SSL, svetujemo, da odstranite storitev paketa Nginx tako, da nastavite privzeto ['firezone']['nginx']['enabled'] = false in namesto tega usmerite povratni proxy v aplikacijo Phoenix na vrata 13000 (privzeto ).
0.5.0 uvaja podporo za protokol ACME za samodejno obnavljanje potrdil SSL s priloženo storitvijo Nginx. Omogočiti,
V Firezone 0.5.0 ni več možnosti dodajanja pravil s podvojenimi cilji. Naš selitveni skript bo med nadgradnjo na 0.5.0 samodejno prepoznal te situacije in obdržal samo pravila, katerih cilj vključuje drugo pravilo. Če je to v redu, vam ni treba storiti ničesar.
V nasprotnem primeru vam svetujemo, da pred nadgradnjo spremenite svoj nabor pravil, da se znebite teh situacij.
Firezone 0.5.0 odstrani podporo za staro konfiguracijo Okta in Google SSO v korist nove, bolj prilagodljive konfiguracije, ki temelji na OIDC.
Če imate kakršno koli konfiguracijo pod privzetimi ključi ['firezone']['authentication']['okta'] ali default['firezone']['authentication']['google'], jih morate preseliti v naš OIDC konfiguracijo na podlagi spodnjega vodnika.
Obstoječa konfiguracija Google OAuth
Odstranite te vrstice, ki vsebujejo stare konfiguracije Google OAuth, iz konfiguracijske datoteke, ki se nahaja na /etc/firezone/firezone.rb
privzeto['firezone']['authentication']['google']['enabled']
privzeto['firezone']['authentication']['google']['client_id']
privzeto['firezone']['authentication']['google']['client_secret']
privzeto['firezone']['authentication']['google']['redirect_uri']
Nato konfigurirajte Google kot ponudnika OIDC, tako da sledite tem postopkom.
(Navedite navodila za povezavo)<<<<<<<<<<<<<<<<
Konfigurirajte obstoječi Google OAuth
Odstranite te vrstice, ki vsebujejo stare konfiguracije Okta OAuth, iz vaše konfiguracijske datoteke, ki se nahaja na /etc/firezone/firezone.rb
privzeto['firezone']['authentication']['okta']['enabled']
default['firezone']['authentication']['okta']['client_id']
privzeto['firezone']['authentication']['okta']['client_secret']
Privzeto['firezone']['authentication']['okta']['site']
Nato konfigurirajte Okta kot ponudnika OIDC, tako da sledite tukajšnjim postopkom.
Glede na trenutno nastavitev in različico upoštevajte spodnja navodila:
Če že imate integracijo OIDC:
Pri nekaterih ponudnikih OIDC je za nadgradnjo na >= 0.3.16 potrebna pridobitev žetona osveževanja za obseg dostopa brez povezave. S tem je zagotovljeno, da se Firezone posodablja s ponudnikom identitete in da se povezava VPN prekine, ko je uporabnik izbrisan. Prejšnje ponovitve Firezone niso imele te funkcije. V nekaterih primerih so lahko uporabniki, ki so izbrisani iz vašega ponudnika identitete, še vedno povezani z VPN.
Dostop brez povezave je treba vključiti v parameter obsega vaše konfiguracije OIDC za ponudnike OIDC, ki podpirajo obseg dostopa brez povezave. Za uveljavitev sprememb v konfiguracijski datoteki Firezone, ki se nahaja na /etc/firezone/firezone.rb, je treba izvesti reconfigure Firezone-ctl.
Za uporabnike, ki jih je overil vaš ponudnik OIDC, boste videli naslov OIDC Connections na strani s podrobnostmi o uporabniku spletnega uporabniškega vmesnika, če je Firezone sposoben uspešno pridobiti žeton za osvežitev.
Če to ne deluje, boste morali izbrisati svojo obstoječo aplikacijo OAuth in ponoviti nastavitvene korake OIDC, da ustvarite novo integracijo aplikacije .
Imam obstoječo integracijo OAuth
Pred 0.3.11 je Firezone uporabljal vnaprej konfigurirane ponudnike OAuth2.
Sledite navodilom tukaj za prehod na OIDC.
Nisem integriral ponudnika identitete
Ni potrebno ukrepanje.
Lahko sledite navodilom tukaj omogočiti SSO prek ponudnika OIDC.
Namesto tega je default['firezone']['external url'] nadomestil konfiguracijsko možnost default['firezone']['fqdn'].
To nastavite na URL vašega spletnega portala Firezone, ki je dostopen širši javnosti. Privzeto bo https:// in FQDN vašega strežnika, če ga pustite nedoločenega.
Konfiguracijska datoteka se nahaja na /etc/firezone/firezone.rb. Za celoten seznam konfiguracijskih spremenljivk in njihovih opisov glejte referenco konfiguracijske datoteke.
Od različice 0.3.0 Firezone ne hrani več zasebnih ključev naprave na strežniku Firezone.
Spletni uporabniški vmesnik Firezone vam ne bo omogočil ponovnega prenosa ali ogleda teh konfiguracij, vendar bi morale vse obstoječe naprave še naprej delovati, kot so.
Če nadgrajujete s Firezone 0.1.x, je nekaj sprememb konfiguracijske datoteke, ki jih morate obravnavati ročno.
Če želite izvesti potrebne spremembe vaše datoteke /etc/firezone/firezone.rb, zaženite spodnje ukaze kot 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 ponovno konfiguriraj
ponovni zagon firezone-ctl
Preverjanje dnevnikov Firezone je pameten prvi korak za morebitne težave, ki se lahko pojavijo.
Zaženite sudo firezone-ctl tail za ogled dnevnikov Firezone.
Večino težav s povezljivostjo s Firezone povzročajo nezdružljiva pravila iptables ali nftables. Zagotoviti morate, da vaša veljavna pravila niso v nasprotju s pravili Firezone.
Prepričajte se, da veriga FORWARD dovoljuje pakete od vaših odjemalcev WireGuard do lokacij, ki jih želite prepustiti Firezone, če se vaša internetna povezljivost poslabša vsakič, ko aktivirate tunel WireGuard.
To lahko dosežete, če uporabljate ufw, tako da zagotovite, da je privzeta politika usmerjanja dovoljena:
ubuntu@fz:~$ sudo ufw privzeto dovoljuje usmerjanje
Privzeti pravilnik o usmerjanju spremenjen v »omogoča«
(ne pozabite ustrezno posodobiti svojih pravil)
A ufw stanje tipičnega strežnika Firezone je lahko videti takole:
ubuntu@fz:~$ sudo ufw status verbose
Status: aktiven
Beleženje: vklopljeno (nizko)
Privzeto: zavrni (dohodno), dovoli (odhodno), dovoli (usmerjeno)
Novi profili: preskoči
Do dejanja od
— —— —-
22/tcp DOVOLI VSTOP Kjer koli
80/tcp DOVOLI VSTOP Kjer koli
443/tcp DOVOLI VSTOP Kjer koli
51820/udp DOVOLI VSTOP kjerkoli
22/tcp (v6) DOVOLI VNOT Kjer koli (v6)
80/tcp (v6) DOVOLI VNOT Kjer koli (v6)
443/tcp (v6) DOVOLJI V Kjer koli (v6)
51820/udp (v6) DOVOLI V Kjer koli (v6)
Svetujemo omejitev dostopa do spletnega vmesnika za izjemno občutljive in kritične proizvodne uvedbe, kot je razloženo spodaj.
Service | Privzeta vrata | Poslušajte naslov | Opis |
Nginx | 80, 443 | vse | Javna vrata HTTP(S) za upravljanje Firezone in olajšanje preverjanja pristnosti. |
Žični ščitnik | 51820 | vse | Javna vrata WireGuard, ki se uporabljajo za seje VPN. (UDP) |
postgresql | 15432 | 127.0.0.1 | Samo lokalna vrata, ki se uporabljajo za priloženi strežnik Postgresql. |
Phoenix | 13000 | 127.0.0.1 | Samo lokalna vrata, ki jih uporablja zgornji strežnik aplikacij elixir. |
Svetujemo vam, da razmislite o omejitvi dostopa do javno izpostavljenega spletnega uporabniškega vmesnika Firezone (privzeta vrata 443/tcp in 80/tcp) in namesto tega uporabite tunel WireGuard za upravljanje Firezone za produkcijske in javne razmestitve, kjer bo odgovoren en skrbnik ustvarjanja in distribucije konfiguracij naprav končnim uporabnikom.
Na primer, če je skrbnik ustvaril konfiguracijo naprave in ustvaril predor z lokalnim naslovom WireGuard 10.3.2.2, bi naslednja konfiguracija ufw skrbniku omogočila dostop do spletnega uporabniškega vmesnika Firezone na vmesniku wg-firezone strežnika s privzetim 10.3.2.1 naslov tunela:
root@demo:~# stanje ufw podrobno
Status: aktiven
Beleženje: vklopljeno (nizko)
Privzeto: zavrni (dohodno), dovoli (odhodno), dovoli (usmerjeno)
Novi profili: preskoči
Do dejanja od
— —— —-
22/tcp DOVOLI VSTOP Kjer koli
51820/udp DOVOLI VSTOP kjerkoli
Kjer koli DOVOLI V 10.3.2.2
22/tcp (v6) DOVOLI VNOT Kjer koli (v6)
51820/udp (v6) DOVOLI V Kjer koli (v6)
To bi pustilo samo 22/tcp izpostavljen dostopu SSH za upravljanje strežnika (neobvezno) in 51820/udp izpostavljeni za vzpostavitev tunelov WireGuard.
Firezone združuje strežnik Postgresql in ujemanje psql pripomoček, ki ga je mogoče uporabiti iz lokalne lupine takole:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d požarno območje \
-h lokalni gostitelj \
-p 15432 \
-c “SQL_STATEMENT”
To je lahko v pomoč pri odpravljanju napak.
Pogosta opravila:
Seznam vseh uporabnikov:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d požarno območje \
-h lokalni gostitelj \
-p 15432 \
-c “IZBERI * IZ uporabnikov;”
Seznam vseh naprav:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d požarno območje \
-h lokalni gostitelj \
-p 15432 \
-c “IZBERI * IZ naprav;”
Spremenite vlogo uporabnika:
Nastavite vlogo na 'admin' ali 'unprivileged':
/opt/firezone/embedded/bin/psql \
-U firezone \
-d požarno območje \
-h lokalni gostitelj \
-p 15432 \
-c “POSODOBITE uporabnike NASTAVITE vlogo = 'admin' WHERE email = '[e-pošta zaščitena]';”
Varnostno kopiranje baze podatkov:
Poleg tega je vključen program pg dump, ki se lahko uporablja za redne varnostne kopije baze podatkov. Izvedite naslednjo kodo za izpis kopije baze podatkov v običajni obliki poizvedbe SQL (zamenjajte /path/to/backup.sql z lokacijo, kjer naj bo datoteka SQL ustvarjena):
/opt/firezone/embedded/bin/pg_dump \
-U firezone \
-d požarno območje \
-h lokalni gostitelj \
-p 15432 > /path/to/backup.sql
Ko je Firezone uspešno uveden, morate dodati uporabnike, da jim omogočite dostop do vašega omrežja. Za to se uporablja spletni uporabniški vmesnik.
Z izbiro gumba »Dodaj uporabnika« pod /users lahko dodate uporabnika. Uporabniku boste morali posredovati e-poštni naslov in geslo. Za samodejno omogočanje dostopa uporabnikom v vaši organizaciji se lahko Firezone poveže in sinhronizira s ponudnikom identitete. Več podrobnosti je na voljo v Preverjanje pristnosti. < Dodajte povezavo za preverjanje pristnosti
Svetujemo, da od uporabnikov zahtevate, da ustvarijo lastne konfiguracije naprave, tako da bo zasebni ključ viden samo njim. Uporabniki lahko ustvarijo lastne konfiguracije naprave tako, da sledijo navodilom na Navodila za stranke strani.
Vse konfiguracije uporabniških naprav lahko ustvarijo skrbniki Firezone. Na strani uporabniškega profila, ki se nahaja na /users, izberite možnost »Dodaj napravo«, da to dosežete.
[Vstavite posnetek zaslona]
Ko ustvarite profil naprave, lahko uporabniku po e-pošti pošljete konfiguracijsko datoteko WireGuard.
Uporabniki in naprave so povezani. Za nadaljnje podrobnosti o tem, kako dodati uporabnika, glejte Dodaj uporabnike.
Z uporabo sistema netfilter v jedru Firezone omogoča zmožnosti izhodnega filtriranja za določitev paketov DROP ali ACCEPT. Ves promet je običajno dovoljen.
CIDR-ji IPv4 in IPv6 ter naslovi IP so podprti prek seznama dovoljenih oziroma seznama zavrnitev. Izberete lahko, da pravilo velja za uporabnika, ko ga dodajate, kar uveljavi pravilo za vse naprave tega uporabnika.
Namestite in konfigurirajte
Če želite vzpostaviti povezavo VPN z domačim odjemalcem WireGuard, glejte ta priročnik.
Uradni odjemalci WireGuard, ki se nahajajo tukaj, so združljivi s Firezone:
Obiščite uradno spletno mesto WireGuard na naslovu https://www.wireguard.com/install/ za sisteme OS, ki niso omenjeni zgoraj.
Vaš skrbnik Firezone ali vi lahko ustvarite konfiguracijsko datoteko naprave s portalom Firezone.
Obiščite URL, ki ga je posredoval vaš skrbnik Firezone, da sami ustvarite konfiguracijsko datoteko naprave. Vaše podjetje bo imelo edinstven URL za to; v tem primeru je to https://instance-id.yourfirezone.com.
Prijavite se v Firezone Okta SSO
[Vstavi posnetek zaslona]
Uvozite datoteko.conf v odjemalca WireGuard tako, da jo odprete. Če preklopite stikalo Aktiviraj, lahko začnete sejo VPN.
[Vstavi posnetek zaslona]
Sledite spodnjim navodilom, če je vaš omrežni skrbnik odobril ponavljajočo se avtentikacijo, da bo vaša povezava VPN ostala aktivna.
Potrebujete:
URL portala Firezone: Vprašajte skrbnika omrežja za povezavo.
Vaš omrežni skrbnik bi moral imeti možnost ponuditi vašo prijavo in geslo. Spletno mesto Firezone vas bo pozvalo, da se prijavite s storitvijo enotne prijave, ki jo uporablja vaš delodajalec (na primer Google ali Okta).
[Vstavi posnetek zaslona]
Pojdite na URL portala Firezone in se prijavite s poverilnicami, ki vam jih je posredoval skrbnik omrežja. Če ste že prijavljeni, kliknite gumb Ponovno preveri pristnost, preden se znova prijavite.
[Vstavi posnetek zaslona]
[Vstavi posnetek zaslona]
Za uvoz konfiguracijskega profila WireGuard s CLI upravitelja omrežja v napravah Linux sledite tem navodilom (nmcli).
Če ima profil omogočeno podporo za IPv6, lahko poskus uvoza konfiguracijske datoteke z grafičnim uporabniškim vmesnikom Network Manager ne uspe z naslednjo napako:
ipv6.method: metoda »samodejno« ni podprta za WireGuard
Potrebno je namestiti pripomočke uporabniškega prostora WireGuard. To bo paket z imenom wireguard ali wireguard-tools za distribucije Linuxa.
Za Ubuntu/Debian:
sudo apt namestite wireguard
Za uporabo Fedore:
sudo dnf namestite wireguard-tools
Arch Linux:
sudo pacman -S wireguard-tools
Za distribucije, ki niso omenjene zgoraj, obiščite uradno spletno stran WireGuard na naslovu https://www.wireguard.com/install/.
Vaš skrbnik Firezone ali samogenerator lahko ustvari konfiguracijsko datoteko naprave s portalom Firezone.
Obiščite URL, ki ga je posredoval vaš skrbnik Firezone, da sami ustvarite konfiguracijsko datoteko naprave. Vaše podjetje bo imelo edinstven URL za to; v tem primeru je to https://instance-id.yourfirezone.com.
[Vstavi posnetek zaslona]
Uvozite priloženo konfiguracijsko datoteko z nmcli:
vrsta uvoza povezave sudo nmcli wireguard datoteka /path/to/configuration.conf
Ime konfiguracijske datoteke bo ustrezalo povezavi/vmesniku WireGuard. Po uvozu lahko povezavo po potrebi preimenujete:
nmcli connection modify [staro ime] connection.id [novo ime]
Z ukazno vrstico se povežite z VPN na naslednji način:
vzpostavljena povezava nmcli [ime vpn]
Če želite prekiniti povezavo:
povezava nmcli prekinjena [ime vpn]
Ustrezen programček Network Manager lahko uporabite tudi za upravljanje povezave, če uporabljate GUI.
Če za možnost samodejne povezave izberete »da«, lahko povezavo VPN konfigurirate za samodejno povezavo:
povezava nmcli spremeni [ime vpn] povezavo. <<<<<<<<<<<<<<<<<<<<<<
samodejna povezava da
Če želite onemogočiti samodejno povezavo, jo nastavite nazaj na ne:
povezava nmcli spremeni [ime vpn] povezavo.
samodejna povezava št
Za aktiviranje MFA Pojdite na stran /user account/register mfa portala Firezone. S svojo aplikacijo za preverjanje pristnosti optično preberite kodo QR, potem ko je bila ustvarjena, nato pa vnesite šestmestno kodo.
Obrnite se na skrbnika, da ponastavi podatke o dostopu do vašega računa, če izgubite aplikacijo za preverjanje pristnosti.
Ta vadnica vas bo vodila skozi postopek nastavitve WireGuardove funkcije razdeljenega tuneliranja s Firezone, tako da se prek strežnika VPN posreduje samo promet na določena območja IP.
Območja IP-jev, za katera bo odjemalec usmerjal omrežni promet, so določena v polju Dovoljeni IP-ji na strani /settings/default. Spremembe tega polja bodo vplivale samo na novo ustvarjene konfiguracije tunelov WireGuard, ki jih je ustvaril Firezone.
[Vstavi posnetek zaslona]
Privzeta vrednost je 0.0.0.0/0, ::/0, ki usmerja ves omrežni promet od odjemalca do strežnika VPN.
Primeri vrednosti v tem polju vključujejo:
0.0.0.0/0, ::/0 – ves omrežni promet bo usmerjen na strežnik VPN.
192.0.2.3/32 – samo promet na en naslov IP bo usmerjen na strežnik VPN.
3.5.140.0/22 – samo promet do naslovov IP v območju 3.5.140.1 – 3.5.143.254 bo usmerjen na strežnik VPN. V tem primeru je bil uporabljen obseg CIDR za regijo ap-severovzhod-2 AWS.
Firezone pri določanju, kam usmeriti paket, najprej izbere izhodni vmesnik, povezan z najbolj natančno potjo.
Uporabniki morajo znova generirati konfiguracijske datoteke in jih dodati svojemu izvornemu odjemalcu WireGuard, da lahko posodobijo obstoječe uporabniške naprave z novo konfiguracijo razdeljenega tunela.
Za navodila glejte dodaj napravo. <<<<<<<<<<< Dodaj povezavo
Ta priročnik bo pokazal, kako povezati dve napravi z uporabo Firezone kot releja. En tipičen primer uporabe je omogočiti skrbniku dostop do strežnika, vsebnika ali stroja, ki je zaščiten z NAT ali požarnim zidom.
Ta ilustracija prikazuje preprost scenarij, v katerem napravi A in B zgradita tunel.
[Vstavite arhitekturno sliko firezone]
Začnite z ustvarjanjem naprave A in naprave B, tako da se pomaknete na /users/[user_id]/new_device. V nastavitvah za vsako napravo zagotovite, da so naslednji parametri nastavljeni na spodaj navedene vrednosti. Nastavitve naprave lahko nastavite, ko ustvarjate konfiguracijo naprave (glejte Dodajanje naprav). Če morate posodobiti nastavitve na obstoječi napravi, lahko to storite tako, da ustvarite novo konfiguracijo naprave.
Upoštevajte, da imajo vse naprave stran /settings/defaults, kjer je mogoče konfigurirati PersistentKeepalive.
Dovoljeni naslovi IP = 10.3.2.2/32
To je IP ali obseg IP-jev naprave B
PersistentKeepalive = 25
Če je naprava za NAT, to zagotavlja, da naprava lahko ohranja tunel pri življenju in še naprej prejema pakete iz vmesnika WireGuard. Običajno zadostuje vrednost 25, vendar boste morda morali to vrednost zmanjšati, odvisno od vašega okolja.
Dovoljeni naslovi IP = 10.3.2.3/32
To je IP ali obseg IP-jev naprave A
PersistentKeepalive = 25
Ta primer prikazuje situacijo, v kateri lahko naprava A komunicira z napravami B do D v obe smeri. Ta nastavitev lahko predstavlja inženirja ali skrbnika, ki dostopa do številnih virov (strežnikov, vsebnikov ali strojev) v različnih omrežjih.
[Arhitekturni diagram]<<<<<<<<<<<<<<<<<<<<<<<<
Prepričajte se, da so naslednje nastavitve v nastavitvah vsake naprave izbrane na ustrezne vrednosti. Ko ustvarjate konfiguracijo naprave, lahko določite nastavitve naprave (glejte Dodajanje naprav). Če je treba posodobiti nastavitve obstoječe naprave, je mogoče ustvariti novo konfiguracijo naprave.
Dovoljeni naslovi IP = 10.3.2.3/32, 10.3.2.4/32, 10.3.2.5/32
To je IP naprav B do D. IP-ji naprav B do D morajo biti vključeni v kateri koli obseg IP, ki ga izberete.
PersistentKeepalive = 25
To zagotavlja, da lahko naprava vzdržuje tunel in še naprej prejema pakete iz vmesnika WireGuard, tudi če je zaščitena z NAT. V večini primerov je vrednost 25 primerna, vendar pa boste glede na okolico morda morali to številko znižati.
Firezone lahko uporabite kot prehod NAT, da ponudite en sam statični izhodni IP za ves promet vaše ekipe. Te situacije vključujejo njegovo pogosto uporabo:
Svetovalni posli: Zahtevajte, da vaša stranka na seznam dovoljenih navede en sam statični naslov IP namesto edinstvenega IP-ja naprave vsakega zaposlenega.
Uporaba posrednika ali prikrivanje vašega izvornega IP-ja zaradi varnosti ali zasebnosti.
V tej objavi bo prikazan preprost primer omejevanja dostopa do spletne aplikacije, ki jo gosti sam, na en sam statični IP na seznamu dovoljenih, ki izvaja Firezone. Na tej sliki sta Firezone in zaščiteni vir na različnih območjih VPC.
Ta rešitev se pogosto uporablja namesto upravljanja seznama dovoljenih naslovov IP za številne končne uporabnike, kar je lahko zamudno, saj se seznam dostopa širi.
Naš cilj je vzpostaviti strežnik Firezone na instanci EC2 za preusmeritev prometa VPN na omejeni vir. V tem primeru Firezone služi kot omrežni posrednik ali prehod NAT, da vsaki povezani napravi dodeli edinstven javni izhodni IP.
V tem primeru ima primerek EC2 z imenom tc2.micro nameščen primerek Firezone. Za informacije o uvajanju Firezone pojdite na Vodnik za uvajanje. V zvezi z AWS se prepričajte:
Varnostna skupina instance Firezone EC2 dovoljuje odhodni promet na naslov IP zaščitenega vira.
Primerek Firezone je opremljen z elastičnim IP-jem. Promet, ki je posredovan prek instance Firezone na zunanje cilje, bo imel to kot izvorni naslov IP. Zadevni naslov IP je 52.202.88.54.
[Vstavi posnetek zaslona]<<<<<<<<<<<<<<<<<<<<<<<<<<
Spletna aplikacija, ki jo gosti sam, v tem primeru služi kot zaščiten vir. Do spletne aplikacije lahko dostopate le z zahtevami, ki prihajajo z naslova IP 52.202.88.54. Odvisno od vira je lahko potrebno dovoliti vhodni promet na različnih vratih in vrstah prometa. To ni zajeto v tem priročniku.
[Vstavite posnetek zaslona]<<<<<<<<<<<<<<<<<<<<<<<<<<
Povejte tretji osebi, ki je odgovorna za zaščiteni vir, da mora biti dovoljen promet s statičnega naslova IP, definiranega v 1. koraku (v tem primeru 52.202.88.54).
Privzeto bo ves uporabniški promet potekal prek strežnika VPN in prihajal s statičnega naslova IP, ki je bil konfiguriran v 1. koraku (v tem primeru 52.202.88.54). Če pa je omogočeno razdeljeno tuneliranje, bodo morda potrebne nastavitve, da zagotovite, da je ciljni IP zaščitenega vira naveden med dovoljenimi IP-ji.
Spodaj je prikazan popoln seznam konfiguracijskih možnosti, ki so na voljo v /etc/firezone/firezone.rb.
možnost | opis | privzeta vrednost |
privzeto['firezone']['external_url'] | URL, uporabljen za dostop do spletnega portala tega primerka Firezone. | “https://#{node['fqdn'] || vozlišče ['ime gostitelja']}” |
privzeto['firezone']['config_directory'] | Imenik najvišje ravni za konfiguracijo Firezone. | /etc/firezone' |
privzeto['firezone']['install_directory'] | Imenik najvišje ravni za namestitev Firezone. | /opt/firezone' |
privzeto['firezone']['app_directory'] | Imenik najvišje ravni za namestitev spletne aplikacije Firezone. | “#{node['firezone']['install_directory']}/embedded/service/firezone” |
privzeto['firezone']['log_directory'] | Imenik najvišje ravni za dnevnike Firezone. | /var/log/firezone' |
privzeto['firezone']['var_directory'] | Imenik najvišje ravni za datoteke izvajalnega okolja Firezone. | /var/opt/firezone' |
privzeto['firezone']['user'] | Ime neprivilegiranega uporabnika Linuxa, ki mu bo pripadala večina storitev in datotek. | Firezone' |
privzeto['firezone']['group'] | Ime skupine Linux, ki ji bo pripadala večina storitev in datotek. | Firezone' |
privzeto['firezone']['admin_email'] | E-poštni naslov začetnega uporabnika Firezone. | “firezone@localhost” |
privzeto['firezone']['max_devices_per_user'] | Največje število naprav, ki jih lahko ima uporabnik. | 10 |
privzeto['firezone']['allow_unprivileged_device_management'] | Uporabnikom, ki niso skrbniki, omogoča ustvarjanje in brisanje naprav. | TRUE |
privzeto['firezone']['allow_unprivileged_device_configuration'] | Uporabnikom, ki niso skrbniki, omogoča spreminjanje konfiguracij naprave. Ko je onemogočeno, neprivilegiranim uporabnikom prepreči spreminjanje vseh polj naprave razen imena in opisa. | TRUE |
privzeto['firezone']['egress_interface'] | Ime vmesnika, kjer bo tunelirani promet izstopil. Če je nič, bo uporabljen privzeti vmesnik poti. | nič |
privzeto['firezone']['fips_enabled'] | Omogočite ali onemogočite način OpenSSL FIPs. | nič |
privzeto['firezone']['beleženje']['omogočeno'] | Omogočite ali onemogočite beleženje v Firezone. Nastavite na false, da popolnoma onemogočite beleženje. | TRUE |
privzeto['enterprise']['name'] | Ime, ki ga uporablja kuharska knjiga Chef 'enterprise'. | Firezone' |
privzeto['firezone']['install_path'] | Namestitvena pot, ki jo uporablja kuharska knjiga Chef 'enterprise'. Mora biti nastavljen na enako kot zgornji install_directory. | vozlišče['firezone']['install_directory'] |
privzeto['firezone']['sysvinit_id'] | Identifikator, uporabljen v /etc/inittab. Biti mora edinstveno zaporedje 1–4 znakov. | SUP' |
privzeto['firezone']['authentication']['local']['enabled'] | Omogočite ali onemogočite lokalno preverjanje pristnosti e-pošte/gesla. | TRUE |
privzeto['firezone']['authentication']['auto_create_oidc_users'] | Samodejno ustvarite uporabnike, ki se prvič prijavijo iz OIDC. Onemogočite, da dovolite samo obstoječim uporabnikom prijavo prek OIDC. | TRUE |
privzeto['firezone']['authentication']['disable_vpn_on_oidc_error'] | Onemogočite VPN uporabnika, če je zaznana napaka pri poskusu osvežitve žetona OIDC. | FALSE |
privzeto['firezone']['authentication']['oidc'] | Konfiguracija OpenID Connect v obliki {“ponudnik” => [konfiguracija…]} – glejte Dokumentacija OpenIDConnect za primere konfiguracije. | {} |
privzeto['firezone']['nginx']['enabled'] | Omogočite ali onemogočite združeni strežnik nginx. | TRUE |
privzeto['firezone']['nginx']['ssl_port'] | Vrata za poslušanje HTTPS. | 443 |
privzeto['firezone']['nginx']['directory'] | Imenik za shranjevanje konfiguracije virtualnega gostitelja nginx, povezane s Firezone. | “#{node['firezone']['var_directory']}/nginx/etc” |
privzeto['firezone']['nginx']['log_directory'] | Imenik za shranjevanje dnevniških datotek nginx, povezanih s Firezone. | “#{node['firezone']['log_directory']}/nginx” |
privzeto['firezone']['nginx']['log_rotation']['file_maxbytes'] | Velikost datoteke, pri kateri se vrtijo dnevniške datoteke Nginx. | 104857600 |
privzeto['firezone']['nginx']['log_rotation']['num_to_keep'] | Število dnevniških datotek Firezone nginx, ki jih je treba shraniti, preden jih zavržete. | 10 |
privzeto['firezone']['nginx']['log_x_forwarded_for'] | Ali naj zabeleži glavo Firezone nginx x-forwarded-for. | TRUE |
privzeto['firezone']['nginx']['hsts_header']['enabled'] | TRUE | |
privzeto['firezone']['nginx']['hsts_header']['include_subdomains'] | Omogočite ali onemogočite includeSubDomains za glavo HSTS. | TRUE |
privzeto['firezone']['nginx']['hsts_header']['max_age'] | Največja starost za glavo HSTS. | 31536000 |
privzeto['firezone']['nginx']['redirect_to_canonical'] | Ali želite preusmeriti URL-je na zgoraj navedeno kanonično FQDN | FALSE |
privzeto['firezone']['nginx']['cache']['enabled'] | Omogočite ali onemogočite predpomnilnik Firezone nginx. | FALSE |
privzeto['firezone']['nginx']['cache']['directory'] | Imenik za predpomnilnik Firezone nginx. | “#{node['firezone']['var_directory']}/nginx/cache” |
privzeto['firezone']['nginx']['user'] | Uporabnik Firezone nginx. | vozlišče['firezone']['uporabnik'] |
privzeto['firezone']['nginx']['group'] | Skupina Firezone nginx. | vozlišče['firezone']['group'] |
privzeto['firezone']['nginx']['dir'] | Konfiguracijski imenik nginx na najvišji ravni. | vozlišče['firezone']['nginx']['imenik'] |
privzeto['firezone']['nginx']['log_dir'] | Dnevniški imenik nginx najvišje ravni. | vozlišče['firezone']['nginx']['log_directory'] |
privzeto['firezone']['nginx']['pid'] | Lokacija za datoteko nginx pid. | “#{node['firezone']['nginx']['directory']}/nginx.pid” |
privzeto['firezone']['nginx']['daemon_disable'] | Onemogoči demonski način nginx, da ga lahko namesto tega spremljamo. | TRUE |
privzeto['firezone']['nginx']['gzip'] | Vklopite ali izklopite stiskanje nginx gzip. | na |
privzeto['firezone']['nginx']['gzip_static'] | Vklopite ali izklopite stiskanje nginx gzip za statične datoteke. | off' |
privzeto['firezone']['nginx']['gzip_http_version'] | Različica HTTP, ki se uporablja za streženje statičnih datotek. | 1.0 |
privzeto['firezone']['nginx']['gzip_comp_level'] | stopnja stiskanja nginx gzip. | 2 |
privzeto['firezone']['nginx']['gzip_proxied'] | Omogoči ali onemogoči gzipping odgovorov za proxy zahteve, odvisno od zahteve in odgovora. | kaj' |
privzeto['firezone']['nginx']['gzip_vary'] | Omogoči ali onemogoči vstavljanje glave odgovora »Vary: Accept-Encoding«. | off' |
privzeto['firezone']['nginx']['gzip_buffers'] | Nastavi število in velikost medpomnilnikov, ki se uporabljajo za stiskanje odgovora. Če je nič, se uporabi privzeta vrednost nginx. | nič |
privzeto['firezone']['nginx']['gzip_types'] | Vrste MIME za omogočanje stiskanja gzip. | ['text/plain', 'text/css','application/x-javascript', 'text/xml', 'application/xml', 'application/rss+xml', 'application/atom+xml', ' besedilo/javascript', 'aplikacija/javascript', 'aplikacija/json'] |
privzeto['firezone']['nginx']['gzip_min_length'] | Najmanjša dolžina datoteke za omogočanje stiskanja datoteke gzip. | 1000 |
privzeto['firezone']['nginx']['gzip_disable'] | Ujemanje uporabniškega agenta za onemogočanje stiskanja gzip. | MSIE [1-6]\.' |
privzeto['firezone']['nginx']['keepalive'] | Aktivira predpomnilnik za povezavo z zgornjimi strežniki. | na |
privzeto['firezone']['nginx']['keepalive_timeout'] | Časovna omejitev v sekundah za vzdrževalno povezavo s strežniki navzgor. | 65 |
privzeto['firezone']['nginx']['worker_processes'] | Število delovnih procesov nginx. | vozlišče['cpu'] && vozlišče['cpu']['total'] ? vozlišče['cpu']['total'] : 1 |
privzeto['firezone']['nginx']['worker_connections'] | Največje število sočasnih povezav, ki jih lahko odpre delovni proces. | 1024 |
privzeto['firezone']['nginx']['worker_rlimit_nofile'] | Spremeni omejitev največjega števila odprtih datotek za delovne procese. Uporablja privzeto vrednost nginx, če je nič. | nič |
privzeto['firezone']['nginx']['multi_accept'] | Ali naj delavci sprejmejo eno povezavo naenkrat ali več. | TRUE |
privzeto['firezone']['nginx']['event'] | Podaja metodo obdelave povezave za uporabo znotraj konteksta dogodkov nginx. | epoll' |
privzeto['firezone']['nginx']['server_tokens'] | Omogoči ali onemogoči oddajanje različice nginx na straneh z napakami in v polju z glavo odgovora »Server«. | nič |
privzeto['firezone']['nginx']['server_names_hash_bucket_size'] | Nastavi velikost vedra za zgoščene tabele imen strežnika. | 64 |
privzeto['firezone']['nginx']['sendfile'] | Omogoči ali onemogoči uporabo nginxovega sendfile(). | na |
privzeto['firezone']['nginx']['access_log_options'] | Nastavi možnosti dnevnika dostopa nginx. | nič |
privzeto['firezone']['nginx']['error_log_options'] | Nastavi možnosti dnevnika napak nginx. | nič |
privzeto['firezone']['nginx']['disable_access_log'] | Onemogoči dnevnik dostopa do nginx. | FALSE |
privzeto['firezone']['nginx']['types_hash_max_size'] | nginx vrste razpršitev največja velikost. | 2048 |
privzeto['firezone']['nginx']['types_hash_bucket_size'] | nginx vrste zgoščena velikost vedra. | 64 |
privzeto['firezone']['nginx']['proxy_read_timeout'] | časovna omejitev branja posrednika nginx. Če želite uporabiti privzeto vrednost nginx, nastavite na nič. | nič |
privzeto['firezone']['nginx']['client_body_buffer_size'] | velikost medpomnilnika telesa odjemalca nginx. Če želite uporabiti privzeto vrednost nginx, nastavite na nič. | nič |
privzeto['firezone']['nginx']['client_max_body_size'] | največja velikost telesa odjemalca nginx. | 250 m' |
privzeto['firezone']['nginx']['default']['modules'] | Določite dodatne module nginx. | [] |
privzeto['firezone']['nginx']['enable_rate_limiting'] | Omogoči ali onemogoči omejevanje hitrosti nginx. | TRUE |
privzeto['firezone']['nginx']['rate_limiting_zone_name'] | Ime območja omejevanja hitrosti Nginx. | Firezone' |
privzeto['firezone']['nginx']['rate_limiting_backoff'] | Omejevanje hitrosti Nginx. | 10 m' |
privzeto['firezone']['nginx']['rate_limit'] | Omejitev hitrosti Nginx. | 10r/s' |
privzeto['firezone']['nginx']['ipv6'] | Dovolite nginxu, da posluša zahteve HTTP za IPv6 poleg IPv4. | TRUE |
privzeto['firezone']['postgresql']['omogočeno'] | Omogoči ali onemogoči združeni Postgresql. Nastavite na false in izpolnite spodnje možnosti zbirke podatkov, če želite uporabiti lasten primerek Postgresql. | TRUE |
privzeto['firezone']['postgresql']['uporabniško ime'] | Uporabniško ime za Postgresql. | vozlišče['firezone']['uporabnik'] |
privzeto['firezone']['postgresql']['data_directory'] | Podatkovni imenik Postgresql. | “#{node['firezone']['var_directory']}/postgresql/13.3/data” |
privzeto['firezone']['postgresql']['log_directory'] | Imenik dnevnikov Postgresql. | “#{node['firezone']['log_directory']}/postgresql” |
privzeto['firezone']['postgresql']['log_rotation']['file_maxbytes'] | Največja velikost datoteke dnevnika Postgresql, preden se zavrti. | 104857600 |
privzeto['firezone']['postgresql']['log_rotation']['num_to_keep'] | Število dnevniških datotek Postgresql, ki jih je treba hraniti. | 10 |
privzeto['firezone']['postgresql']['checkpoint_completion_target'] | Cilj dokončanja kontrolne točke Postgresql. | 0.5 |
privzeto['firezone']['postgresql']['checkpoint_segments'] | Število segmentov kontrolne točke Postgresql. | 3 |
privzeto['firezone']['postgresql']['checkpoint_timeout'] | Časovna omejitev kontrolne točke Postgresql. | 5 min' |
privzeto['firezone']['postgresql']['checkpoint_warning'] | Čas opozorila kontrolne točke Postgresql v sekundah. | 30-a |
privzeto['firezone']['postgresql']['effective_cache_size'] | Učinkovita velikost predpomnilnika Postgresql. | 128 MB' |
privzeto['firezone']['postgresql']['listen_address'] | Naslov poslušanja Postgresql. | 127.0.0.1 |
privzeto['firezone']['postgresql']['max_connections'] | Postgresql max povezave. | 350 |
privzeto['firezone']['postgresql']['md5_auth_cidr_addresses'] | CIDR-ji Postgresql za omogočanje avtorizacije md5. | ['127.0.0.1/32', '::1/128'] |
privzeto['firezone']['postgresql']['port'] | Vrata za poslušanje Postgresql. | 15432 |
privzeto['firezone']['postgresql']['shared_buffers'] | Velikost medpomnilnikov v skupni rabi Postgresql. | “#{(node['memory']['total'].to_i / 4) / 1024}MB” |
privzeto['firezone']['postgresql']['shmmax'] | Postgresql shmmax v bajtih. | 17179869184 |
privzeto['firezone']['postgresql']['shmall'] | Postgresql shmall v bajtih. | 4194304 |
privzeto['firezone']['postgresql']['work_mem'] | Velikost delovnega pomnilnika Postgresql. | 8 MB' |
privzeto['firezone']['database']['user'] | Določa uporabniško ime, ki ga bo Firezone uporabil za povezavo z bazo podatkov. | vozlišče['firezone']['postgresql']['uporabniško ime'] |
privzeto['firezone']['database']['password'] | Če uporabljate zunanjo bazo podatkov, določa geslo, ki ga bo Firezone uporabil za povezavo z bazo podatkov. | spremeni me' |
privzeto['firezone']['database']['name'] | Baza podatkov, ki jo bo uporabljal Firezone. Bo ustvarjen, če ne obstaja. | Firezone' |
privzeto['firezone']['database']['host'] | Gostitelj baze podatkov, s katerim se bo Firezone povezal. | vozlišče['firezone']['postgresql']['listen_address'] |
privzeto['firezone']['database']['port'] | Vrata baze podatkov, s katerimi se bo Firezone povezal. | vozlišče['firezone']['postgresql']['port'] |
privzeto['firezone']['database']['pool'] | Velikost baze podatkov bo uporabljal Firezone. | [10, Itd.nprocesorjev].maks |
privzeto['firezone']['database']['ssl'] | Ali naj se z bazo podatkov poveže prek SSL. | FALSE |
privzeto['firezone']['database']['ssl_opts'] | {} | |
privzeto['firezone']['database']['parameters'] | {} | |
privzeto['firezone']['database']['extensions'] | Omogočiti razširitve baze podatkov. | { 'plpgsql' => res, 'pg_trgm' => res } |
privzeto['firezone']['phoenix']['enabled'] | Omogočite ali onemogočite spletno aplikacijo Firezone. | TRUE |
privzeto['firezone']['phoenix']['listen_address'] | Naslov poslušanja spletne aplikacije Firezone. To bo naslov za poslušanje navzgor, ki ga posreduje nginx. | 127.0.0.1 |
privzeto['firezone']['phoenix']['port'] | Vrata poslušanja spletne aplikacije Firezone. To bodo vrata navzgor, ki jih nginx posreduje. | 13000 |
privzeto['firezone']['phoenix']['log_directory'] | Imenik dnevnika spletne aplikacije Firezone. | “#{node['firezone']['log_directory']}/phoenix” |
privzeto['firezone']['phoenix']['log_rotation']['file_maxbytes'] | Velikost datoteke dnevnika spletne aplikacije Firezone. | 104857600 |
privzeto['firezone']['phoenix']['log_rotation']['num_to_keep'] | Število dnevniških datotek spletne aplikacije Firezone, ki jih je treba hraniti. | 10 |
privzeto['firezone']['phoenix']['crash_detection']['enabled'] | Omogočite ali onemogočite zaustavitev spletne aplikacije Firezone, ko je zaznana zrušitev. | TRUE |
privzeto['firezone']['phoenix']['external_trusted_proxies'] | Seznam zaupanja vrednih povratnih proxyjev, oblikovanih kot niz IP-jev in/ali CIDR-jev. | [] |
privzeto['firezone']['phoenix']['private_clients'] | Seznam zasebnih omrežnih odjemalcev HTTP, oblikovanih kot niz IP-jev in/ali CIDR-jev. | [] |
privzeto['firezone']['wireguard']['enabled'] | Omogočite ali onemogočite združeno upravljanje WireGuard. | TRUE |
privzeto['firezone']['wireguard']['log_directory'] | Imenik dnevnikov za upravljanje paketa WireGuard. | “#{node['firezone']['log_directory']}/wireguard” |
privzeto['firezone']['wireguard']['log_rotation']['file_maxbytes'] | Največja velikost dnevniške datoteke WireGuard. | 104857600 |
privzeto['firezone']['wireguard']['log_rotation']['num_to_keep'] | Število dnevniških datotek WireGuard, ki jih je treba hraniti. | 10 |
privzeto['firezone']['wireguard']['interface_name'] | Ime vmesnika WireGuard. Spreminjanje tega parametra lahko povzroči začasno izgubo povezljivosti VPN. | wg-firezone' |
privzeto['firezone']['wireguard']['port'] | Vrata za poslušanje WireGuard. | 51820 |
privzeto['firezone']['wireguard']['mtu'] | MTU vmesnika WireGuard za ta strežnik in za konfiguracije naprav. | 1280 |
privzeto['firezone']['wireguard']['endpoint'] | WireGuard Endpoint za uporabo za generiranje konfiguracij naprave. Če je nič, je privzeto nastavljen javni naslov IP strežnika. | nič |
privzeto['firezone']['wireguard']['dns'] | WireGuard DNS za uporabo za generirane konfiguracije naprav. | 1.1.1.1, 1.0.0.1′ |
privzeto['firezone']['wireguard']['allowed_ips'] | WireGuard AllowedIP-ji za uporabo za generirane konfiguracije naprav. | 0.0.0.0/0, ::/0′ |
privzeto['firezone']['wireguard']['persistent_keepalive'] | Privzeta nastavitev PersistentKeepalive za ustvarjene konfiguracije naprave. Vrednost 0 onemogoči. | 0 |
privzeto['firezone']['wireguard']['ipv4']['enabled'] | Omogočite ali onemogočite IPv4 za omrežje WireGuard. | TRUE |
privzeto['firezone']['wireguard']['ipv4']['masquerade'] | Omogočite ali onemogočite maskiranje za pakete, ki zapuščajo tunel IPv4. | TRUE |
privzeto['firezone']['wireguard']['ipv4']['omrežje'] | Bazen naslovov IPv4 omrežja WireGuard. | 10.3.2.0/24 ′ |
privzeto['firezone']['wireguard']['ipv4']['address'] | Naslov IPv4 vmesnika WireGuard. Mora biti v naslovni skupini WireGuard. | 10.3.2.1 |
privzeto['firezone']['wireguard']['ipv6']['enabled'] | Omogočite ali onemogočite IPv6 za omrežje WireGuard. | TRUE |
privzeto['firezone']['wireguard']['ipv6']['masquerade'] | Omogočite ali onemogočite maskiranje za pakete, ki zapuščajo tunel IPv6. | TRUE |
privzeto['firezone']['wireguard']['ipv6']['omrežje'] | Bazen naslovov IPv6 omrežja WireGuard. | fd00::3:2:0/120′ |
privzeto['firezone']['wireguard']['ipv6']['address'] | Naslov IPv6 vmesnika WireGuard. Biti mora znotraj skupine naslovov IPv6. | fd00::3:2:1′ |
privzeto['firezone']['runit']['svlogd_bin'] | Runit svlogd bin lokacija. | “#{node['firezone']['install_directory']}/embedded/bin/svlogd” |
privzeto['firezone']['ssl']['imenik'] | Imenik SSL za shranjevanje ustvarjenih potrdil. | /var/opt/firezone/ssl' |
privzeto['firezone']['ssl']['email_address'] | E-poštni naslov za uporabo za samopodpisana potrdila in obvestila o podaljšanju protokola ACME. | |
privzeto['firezone']['ssl']['acme']['enabled'] | Omogoči ACME za samodejno zagotavljanje potrdil SSL. Onemogočite to, da preprečite Nginxu poslušanje na vratih 80. Glejte tukaj za več navodil. | FALSE |
privzeto['firezone']['ssl']['acme']['server'] | Strežnik ACME za izdajo/podaljšanje potrdila. Lahko katera koli veljaven strežnik acme.sh | letsencrypt |
privzeto['firezone']['ssl']['acme']['keylength'] | Določite vrsto in dolžino ključa za potrdila SSL. glej tukaj | ec-256 |
privzeto['firezone']['ssl']['certificate'] | Pot do datoteke potrdila za vaš FQDN. Preglasi zgornjo nastavitev ACME, če je navedena. Če sta tako ACME kot to nič, bo ustvarjeno samopodpisano potrdilo. | nič |
privzeto['firezone']['ssl']['certificate_key'] | Pot do datoteke potrdila. | nič |
privzeto['firezone']['ssl']['ssl_dhparam'] | nginx ssl dh_param. | nič |
privzeto['firezone']['ssl']['country_name'] | Ime države za samopodpisano potrdilo. | ZDA' |
privzeto['firezone']['ssl']['state_name'] | Ime države za samopodpisano potrdilo. | CA ' |
privzeto['firezone']['ssl']['locality_name'] | Ime kraja za samopodpisano potrdilo. | San Francisco' |
privzeto['firezone']['ssl']['ime_podjetja'] | Samopodpisano potrdilo o imenu podjetja. | Moje podjetje' |
privzeto['firezone']['ssl']['ime_organizacijske_enote'] | Ime organizacijske enote za samopodpisano potrdilo. | Operacije' |
privzeto['firezone']['ssl']['ciphers'] | Šifre SSL za uporabo 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’ |
privzeto['firezone']['ssl']['fips_ciphers'] | Šifre SSL za način FIPs. | FIPS@STRENGTH:!aNULL:!eNULL' |
privzeto ['firezone']['ssl']['protokoli'] | Protokoli TLS za uporabo. | TLSv1 TLSv1.1 TLSv1.2' |
privzeto['firezone']['ssl']['session_cache'] | Predpomnilnik seje SSL. | deljeno:SSL:4m' |
privzeto['firezone']['ssl']['session_timeout'] | Časovna omejitev seje SSL. | 5 m' |
privzeto['firezone']['robots_allow'] | roboti nginx omogočajo. | /' |
privzeto['firezone']['robots_disallow'] | nginx roboti onemogočajo. | nič |
privzeto['firezone']['outbound_email']['from'] | Odhodna e-pošta z naslova. | nič |
privzeto['firezone']['outbound_email']['provider'] | Ponudnik storitev odhodne e-pošte. | nič |
privzeto['firezone']['outbound_email']['configs'] | Konfiguracije ponudnika odhodne e-pošte. | glejte omnibus/cookbooks/firezone/attributes/default.rb |
privzeto['firezone']['telemetry']['enabled'] | Omogočite ali onemogočite anonimizirano telemetrijo izdelka. | TRUE |
privzeto['firezone']['connectivity_checks']['enabled'] | Omogočite ali onemogočite storitev preverjanja povezljivosti Firezone. | TRUE |
privzeto['firezone']['connectivity_checks']['interval'] | Interval med preverjanji povezljivosti v sekundah. | 3_600 |
________________________________________________________________
Tukaj boste našli seznam datotek in imenikov, povezanih s tipično namestitvijo Firezone. Te se lahko spremenijo glede na spremembe vaše konfiguracijske datoteke.
pot | opis |
/var/opt/firezone | Imenik na najvišji ravni, ki vsebuje podatke in ustvarjeno konfiguracijo za storitve v paketu Firezone. |
/opt/firezone | Imenik na najvišji ravni, ki vsebuje vgrajene knjižnice, binarne datoteke in izvajalne datoteke, ki jih potrebuje Firezone. |
/usr/bin/firezone-ctl | pripomoček firezone-ctl za upravljanje vaše namestitve Firezone. |
/etc/systemd/system/firezone-runsvdir-start.service | datoteka enote systemd za zagon nadzorniškega procesa Firezone runsvdir. |
/etc/firezone | Konfiguracijske datoteke Firezone. |
__________________________________________________________
Ta stran je bila prazna v dokumentih
_____________________________________________________________
Naslednjo predlogo požarnega zidu nftables je mogoče uporabiti za zaščito strežnika, na katerem se izvaja Firezone. Predloga vsebuje nekaj predpostavk; morda boste morali prilagoditi pravila, da bodo ustrezala vašemu primeru uporabe:
Firezone konfigurira lastna pravila nftables, da dovoli/zavrne promet do ciljev, konfiguriranih v spletnem vmesniku, in za obravnavanje odhodnega NAT za promet odjemalcev.
Če uporabite spodnjo predlogo požarnega zidu na že delujočem strežniku (ne ob zagonu), se bodo pravila Firezone počistila. To lahko vpliva na varnost.
Če želite to rešiti, znova zaženite storitev Phoenix:
firezone-ctl znova zaženite phoenix
#!/usr/sbin/nft -f
## Počisti/odplakni vsa obstoječa pravila
nabor pravil za izpiranje
################################# SPREMENLJIVKE ################## ################
## Ime internetnega/WAN vmesnika
definirajte DEV_WAN = eth0
## Ime vmesnika WireGuard
definirajte DEV_WIREGUARD = wg-firezone
## Vrata za poslušanje WireGuard
definirajte WIREGUARD_PORT = 51820
############################### KONEC SPREMENLJIVK #################### ############
# Glavna tabela za filtriranje inet družine
tabela inet filter {
# Pravila za posredovan promet
# Ta veriga je obdelana pred posredovano verigo Firezone
veriga naprej {
vrsta filtra kavelj naprej prednostni filter – 5; politika sprejeti
}
# Pravila za vhodni promet
verižni vnos {
vrsta filtra kavelj vhodni prednostni filter; padec politike
## Dovolite vhodni promet vmesniku povratne zanke
iif lo \
sprejeti \
komentar »Dovoli ves promet iz vmesnika povratne zanke«
## Dovoli vzpostavljene in povezane povezave
ct stanje vzpostavljeno, povezano \
sprejeti \
komentar »Dovoli vzpostavljene/povezane povezave«
## Dovoli vhodni promet WireGuard
iif $DEV_WAN udp dport $WIREGUARD_PORT \
števec \
sprejeti \
komentar »Dovoli vhodni promet WireGuard«
## Zabeležite in izpustite nove pakete TCP, ki niso SYN
tcp zastavice != syn ct stanje novo \
mejna stopnja 100/minutni izbruh 150 paketi \
predpono dnevnika “IN – nov !SYN: “ \
komentar »Beleženje omejitve hitrosti za nove povezave, ki nimajo nastavljene zastavice SYN TCP«
tcp zastavice != syn ct stanje novo \
števec \
spusti \
komentar »Odvrzi nove povezave, ki nimajo nastavljene zastavice SYN TCP«
## Zabeleži in izpusti TCP pakete z neveljavno nastavljeno zastavo fin/syn
tcp zastavice & (fin|syn) == (fin|syn) \
mejna stopnja 100/minutni izbruh 150 paketi \
predpono dnevnika “IN – TCP FIN|SIN: “ \
komentar »Beleženje omejitve hitrosti za pakete TCP z neveljavno nastavljeno zastavico fin/syn«
tcp zastavice & (fin|syn) == (fin|syn) \
števec \
spusti \
komentar »Odvrzi pakete TCP z neveljavno nastavljeno zastavico fin/syn«
## Zabeleži in izpusti TCP pakete z neveljavno nastavljeno zastavico syn/rst
tcp zastavice & (syn|rst) == (syn|rst) \
mejna stopnja 100/minutni izbruh 150 paketi \
predpono dnevnika “IN – TCP SYN|RST: “ \
komentar »Beleženje omejitve hitrosti za pakete TCP z neveljavno nastavljeno zastavico syn/rst«
tcp zastavice & (syn|rst) == (syn|rst) \
števec \
spusti \
komentar »Izbriši pakete TCP z neveljavno nastavljeno zastavico syn/rst«
## Zapiši in spusti neveljavne zastavice TCP
tcp zastavice & (fin|syn|rst|psh|ack|urg) < (fin) \
mejna stopnja 100/minutni izbruh 150 paketi \
predpono dnevnika “IN – FIN:” \
komentar »Beleženje omejitve hitrosti za neveljavne zastavice TCP (fin|syn|rst|psh|ack|urg) < (fin)«
tcp zastavice & (fin|syn|rst|psh|ack|urg) < (fin) \
števec \
spusti \
komentar »Odvrzi pakete TCP z zastavicami (fin|syn|rst|psh|ack|urg) < (fin)«
## Zapiši in spusti neveljavne zastavice TCP
tcp zastavice & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
mejna stopnja 100/minutni izbruh 150 paketi \
predpono dnevnika »IN – FIN|PSH|URG:« \
komentar »Beleženje omejitve hitrosti za neveljavne zastavice TCP (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)«
tcp zastavice & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
števec \
spusti \
komentar »Odvrzi pakete TCP z zastavicami (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)«
## Izpad prometa z neveljavnim stanjem povezave
stanje ct neveljavno \
mejna stopnja 100/minutni izbruh 150 paketi \
zastavice dnevnika vse predpone “IN – Neveljavno: “ \
komentar »Beleženje omejitve hitrosti za promet z neveljavnim stanjem povezave«
stanje ct neveljavno \
števec \
spusti \
komentar »Opusti promet z neveljavnim stanjem povezave«
## Dovolite odzive ping/ping IPv4, vendar omejite hitrost na 2000 PPS
ip protokol icmp vrsta icmp { echo-odgovor, echo-request } \
mejna stopnja 2000/drugo \
števec \
sprejeti \
komentar »Dovoli vhodni odmev IPv4 (ping), omejen na 2000 PPS«
## Dovoli vse druge vhodne IPv4 ICMP
ip protokol icmp \
števec \
sprejeti \
komentar »Dovoli vse druge IPv4 ICMP«
## Dovolite odzive ping/ping IPv6, vendar omejite hitrost na 2000 PPS
icmpv6 type { echo-odgovor, echo-request } \
mejna stopnja 2000/drugo \
števec \
sprejeti \
komentar »Dovoli vhodni odmev IPv6 (ping), omejen na 2000 PPS«
## Dovoli vse druge vhodne IPv6 ICMP
meta l4proto { icmpv6 } \
števec \
sprejeti \
komentar »Dovoli vse druge IPv6 ICMP«
## Dovolite vhodna vrata UDP traceroute, vendar omejite na 500 PPS
udp dport 33434-33524 \
mejna stopnja 500/drugo \
števec \
sprejeti \
komentar »Dovoli vhodno sledilno pot UDP, omejeno na 500 PPS«
## Dovolite vhodni SSH
tcp dport ssh ct stanje novo \
števec \
sprejeti \
komentar »Dovoli vhodne povezave SSH«
## Dovolite vhodni HTTP in HTTPS
tcp dport { http, https } ct stanje novo \
števec \
sprejeti \
komentar »Dovoli vhodne povezave HTTP in HTTPS«
## Beležite promet brez ujema, vendar omejite beleženje na največ 60 sporočil/minuto
## Privzeti pravilnik bo uporabljen za promet brez ujema
mejna stopnja 60/minutni izbruh 100 paketi \
predpono dnevnika “IN – Drop: “ \
komentar »Zabeleži promet brez ujemanja«
## Preštejte promet brez ujema
števec \
komentar »Preštejte promet brez ujemanja«
}
# Pravila za izhodni promet
verižni izhod {
vrsta filtra kavelj izhodni prednostni filter; padec politike
## Dovoli odhodni promet vmesniku povratne zanke
oii lo \
sprejeti \
komentar »Dovoli ves promet v vmesnik povratne zanke«
## Dovoli vzpostavljene in povezane povezave
ct stanje vzpostavljeno, povezano \
števec \
sprejeti \
komentar »Dovoli vzpostavljene/povezane povezave«
## Dovolite izhodni promet WireGuard, preden prekinete povezave v slabem stanju
oif $DEV_WAN udp šport $WIREGUARD_PORT \
števec \
sprejeti \
komentar »Dovoli odhodni promet WireGuard«
## Izpad prometa z neveljavnim stanjem povezave
stanje ct neveljavno \
mejna stopnja 100/minutni izbruh 150 paketi \
zastavice dnevnika vse predpone »OUT – Neveljavno: « \
komentar »Beleženje omejitve hitrosti za promet z neveljavnim stanjem povezave«
stanje ct neveljavno \
števec \
spusti \
komentar »Opusti promet z neveljavnim stanjem povezave«
## Dovoli vse druge odhodne IPv4 ICMP
ip protokol icmp \
števec \
sprejeti \
komentar »Dovoli vse vrste IPv4 ICMP«
## Dovoli vse druge odhodne IPv6 ICMP
meta l4proto { icmpv6 } \
števec \
sprejeti \
komentar »Dovoli vse vrste IPv6 ICMP«
## Dovoli izhodna vrata UDP traceroute, vendar omeji na 500 PPS
udp dport 33434-33524 \
mejna stopnja 500/drugo \
števec \
sprejeti \
komentar »Dovoli izhodno sledenje UDP, omejeno na 500 PPS«
## Dovoli odhodne povezave HTTP in HTTPS
tcp dport { http, https } ct stanje novo \
števec \
sprejeti \
komentar »Dovoli odhodne povezave HTTP in HTTPS«
## Dovoli pošiljanje izhodnih SMTP
tcp dport predložitev ct stanje novo \
števec \
sprejeti \
komentar »Dovoli oddajo izhodnega SMTP«
## Dovoli odhodne zahteve DNS
udp dport 53 \
števec \
sprejeti \
komentar »Dovoli odhodne zahteve UDP DNS«
tcp dport 53 \
števec \
sprejeti \
komentar »Dovoli odhodne zahteve TCP DNS«
## Dovoli odhodne zahteve NTP
udp dport 123 \
števec \
sprejeti \
komentar »Dovoli odhodne zahteve NTP«
## Beležite promet brez ujema, vendar omejite beleženje na največ 60 sporočil/minuto
## Privzeti pravilnik bo uporabljen za promet brez ujema
mejna stopnja 60/minutni izbruh 100 paketi \
predpono dnevnika “OUT – Drop: “ \
komentar »Zabeleži promet brez ujemanja«
## Preštejte promet brez ujema
števec \
komentar »Preštejte promet brez ujemanja«
}
}
# Glavna tabela filtriranja NAT
tabela inet nat {
# Pravila za predhodno usmerjanje prometa NAT
predhodno usmerjanje verige {
vrsta nat kavelj prednost pred usmerjanjem dstnat; politika sprejeti
}
# Pravila za naknadno usmerjanje prometa NAT
# Ta tabela je obdelana pred verigo post-usmerjanja Firezone
verižno prestavljanje {
vrsta nat kavelj postrouting prioriteta srcnat – 5; politika sprejeti
}
}
Požarni zid mora biti shranjen na ustrezni lokaciji za distribucijo Linuxa, ki se izvaja. Za Debian/Ubuntu je to /etc/nftables.conf, za RHEL pa /etc/sysconfig/nftables.conf.
nftables.service bo treba konfigurirati za zagon ob zagonu (če še ni) nastavite:
systemctl omogoči nftables.service
Če spreminjate predlogo požarnega zidu, lahko sintakso preverite tako, da zaženete ukaz za preverjanje:
nft -f /path/to/nftables.conf -c
Preverite, ali požarni zid deluje po pričakovanjih, saj nekatere funkcije nftables morda ne bodo na voljo, odvisno od izdaje, ki se izvaja na strežniku.
_______________________________________________________________
Ta dokument predstavlja pregled telemetrije, ki jo Firezone zbira iz vaše samogostiteljske instance, in kako jo onemogočiti.
Požarno območje opira na telemetriji, da damo prednost našemu načrtu in optimiziramo inženirske vire, ki jih imamo, da naredimo Firezone boljši za vse.
Namen telemetrije, ki jo zbiramo, je odgovoriti na naslednja vprašanja:
Obstajajo tri glavna mesta, kjer se telemetrija zbira v Firezone:
V vsakem od teh treh kontekstov zajamemo najmanjšo količino podatkov, potrebnih za odgovor na vprašanja v zgornjem razdelku.
Skrbniška e-poštna sporočila se zbirajo samo, če se izrecno odločite za posodobitve izdelkov. V nasprotnem primeru so podatki, ki omogočajo osebno identifikacijo nikoli zbrani.
Firezone shranjuje telemetrijo v samostojni instanci PostHog, ki se izvaja v zasebni gruči Kubernetes, do katere lahko dostopa samo ekipa Firezone. Tukaj je primer telemetričnega dogodka, ki je poslan iz vašega primerka Firezone na naš telemetrični strežnik:
{
"Id": “0182272d-0b88-0000-d419-7b9a413713f1”,
"časovni žig": “2022-07-22T18:30:39.748000+00:00”,
“dogodek”: “fz_http_started”,
“različni_id”: “1ec2e794-1c3e-43fc-a78f-1db6d1a37f54”,
"lastnosti": {
“$geoip_city_name”: "Ashburn",
“$geoip_continent_code”: "NA",
“$geoip_continent_name”: "Severna Amerika",
“$geoip_country_code”: "US",
“$geoip_country_name”: "Združene države",
“$geoip_latitude”: 39.0469,
“$geoip_longitude”: -77.4903,
“$geoip_postal_code”: "20149",
“$geoip_subdivision_1_code”: "VA",
“$geoip_subdivision_1_name”: "Virginija",
“$geoip_time_zone”: “Amerika/New_York”,
“$ip”: "52.200.241.107",
“$plugins_deferred”: [],
“$plugins_failed”: [],
“$plugins_succeeded”[
"GeoIP (3)"
],
“različni_id”: “1zc2e794-1c3e-43fc-a78f-1db6d1a37f54”,
“fqdn”: “awsdemo.firezone.dev”,
“različica_jedra”: »linux 5.13.0«,
"različica": "0.4.6"
},
“elementi_veriga”: ""
}
OPOMBE
Razvojna ekipa Firezone opira o analitiki izdelkov, da bo Firezone boljši za vse. Če pustite omogočeno telemetrijo, je najdragocenejši prispevek, ki ga lahko daste k razvoju Firezone. Kljub temu razumemo, da imajo nekateri uporabniki višje zahteve glede zasebnosti ali varnosti in bi raje v celoti onemogočili telemetrijo. Če ste to vi, nadaljujte z branjem.
Telemetrija je privzeto omogočena. Če želite popolnoma onemogočiti telemetrijo izdelka, nastavite naslednjo konfiguracijsko možnost na false v /etc/firezone/firezone.rb in zaženite sudo firezone-ctl reconfigure, da prevzamete spremembe.
privzeto ['firezone']['telemetrija']['omogočeno'] = false
To bo popolnoma onemogočilo vso telemetrijo izdelka.