Hailbytes VPN su Firezone ugniasienės dokumentacija

Turinys

Pradėkite

Čia pateikiamos nuoseklios instrukcijos, kaip įdiegti „Hailbytes VPN“ su „Firezone“ GUI. 

Administruoti: serverio egzemplioriaus nustatymas yra tiesiogiai susijęs su šia dalimi.

Vartotojo vadovai: naudingi dokumentai, kurie gali išmokyti naudotis Firezone ir išspręsti įprastas problemas. Sėkmingai įdiegę serverį, žr. šį skyrių.

Įprastų konfigūracijų vadovai

Padalytas tuneliavimas: naudokite VPN, kad srautas būtų siunčiamas tik į tam tikrus IP diapazonus.

Įtraukimas į baltąjį sąrašą: nustatykite VPN serverio statinį IP adresą, kad galėtumėte naudoti įtraukimą į baltąjį sąrašą.

Atvirkštiniai tuneliai: kurkite tunelius tarp kelių partnerių naudodami atvirkštinius tunelius.

gauti paramą

Džiaugiamės galėdami padėti, jei jums reikia pagalbos diegiant, tinkinant arba naudojant „Hailbytes VPN“.

Atpažinimas

Kad naudotojai galėtų kurti arba atsisiųsti įrenginio konfigūracijos failus, „Firezone“ gali būti sukonfigūruotas taip, kad reikalautų autentifikavimo. Naudotojams taip pat gali tekti periodiškai iš naujo autentifikuoti, kad VPN ryšys išliktų aktyvus.

Nors numatytasis „Firezone“ prisijungimo būdas yra vietinis el. paštas ir slaptažodis, jį taip pat galima integruoti su bet kuriuo standartizuotu „OpenID Connect“ (OIDC) tapatybės teikėju. Dabar vartotojai gali prisijungti prie „Firezone“ naudodami savo „Okta“, „Google“, „Azure AD“ arba privataus tapatybės teikėjo kredencialus.

 

Integruokite bendrą OIDC teikėją

Konfigūracijos parametrai, kurių reikia „Firezone“, kad būtų galima leisti SSO naudojant OIDC teikėją, parodyti toliau pateiktame pavyzdyje. Svetainėje /etc/firezone/firezone.rb galite rasti konfigūracijos failą. Paleiskite firezone-ctl perkonfigūruoti ir firezone-ctl paleiskite iš naujo, kad atnaujintumėte programą ir įsigaliotų pakeitimai.

 

# Tai yra „Google“ ir „Okta“ kaip SSO tapatybės teikėjo naudojimo pavyzdys.

# Prie to paties „Firezone“ egzemplioriaus galima pridėti kelias OIDC konfigūracijas.

 

# Firezone gali išjungti vartotojo VPN, jei bandant aptikta klaida

#, kad atnaujintumėte savo prieigos_tokeną. Patvirtinta, kad tai veikia „Google“, „Okta“ ir

# Azure SSO ir naudojamas automatiškai atjungti vartotojo VPN, jei jie pašalinami

# iš OIDC teikėjo. Palikite tai išjungtą, jei jūsų OIDC teikėjas

# turi problemų atnaujinant prieigos prieigos raktus, nes tai gali netikėtai nutraukti a

# vartotojo VPN sesija.

default['firezone']['autentifikavimas']['disable_vpn_on_oidc_error'] = false

 

default['firezone']['autentifikacija']['oidc'] = {

  google: {

    discovery_document_uri: „https://accounts.google.com/.well-known/openid-configuration“,

    kliento_id: " ”,

    client_secret: " ”,

    redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/google/callback/“,

    atsako_tipas: "kodas",

    taikymo sritis: „atviras el. pašto profilis“,

    etiketė: „Google“

  },

  gerai: {

    Discovery_document_uri: „https:// /.well-known/openid-configuration“,

    kliento_id: " ”,

    client_secret: " ”,

    redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/okta/callback/“,

    atsako_tipas: "kodas",

    taikymo sritis: „atviras el. pašto profilis offline_access“,

    etiketė: "Okta"

  }

}



Norint integruoti, reikalingi šie konfigūracijos nustatymai:

  1. discovery_document_uri: OpenID Connect teikėjo konfigūracijos URI kuris grąžina JSON dokumentą, naudojamą kuriant vėlesnes užklausas šiam OIDC teikėjui.
  2. client_id: programos kliento ID.
  3. client_secret: programos kliento paslaptis.
  4. redirect_uri: nurodo OIDC teikėjui, kur nukreipti po autentifikavimo. Tai turėtų būti jūsų Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/google/callback/).
  5. response_type: Nustatykite kodą.
  6. apimtis: OIDC apimtys gauti iš savo OIDC teikėjo. Tai turėtų būti nustatyta kaip atviras el. pašto profilis arba atviras el. pašto profilis offline_access, priklausomai nuo teikėjo.
  7. etiketė: mygtuko etiketės tekstas, rodomas jūsų Firezone prisijungimo ekrane.

Gražūs URL

Kiekvienam OIDC teikėjui sukuriamas atitinkamas gražus URL, kad būtų galima nukreipti į sukonfigūruoto teikėjo prisijungimo URL. Aukščiau pateiktoje OIDC konfigūracijos pavyzdyje URL adresai yra šie:

  • https://instance-id.yourfirezone.com/auth/oidc/google
  • https://instance-id.yourfirezone.com/auth/oidc/okta

„Firezone“ sąrankos su populiariais tapatybės teikėjais instrukcijos

Teikėjai, kurių turime dokumentus:

  • "Google"
  • Okta
  • Azure Active Directory
  • Onelogin
  • Vietinis autentifikavimas

 

Jei jūsų tapatybės teikėjas turi bendrąją OIDC jungtį ir jos nėra aukščiau, informacijos, kaip gauti reikiamus konfigūracijos nustatymus, rasite jo dokumentacijoje.

Palaikykite reguliarų pakartotinį autentifikavimą

Skiltyje „Nustatymai / sauga“ esantį nustatymą galima pakeisti, kad būtų reikalaujama periodinio pakartotinio autentifikavimo. Tai gali būti naudojama norint įgyvendinti reikalavimą, kad vartotojai reguliariai prisijungtų prie „Firezone“, kad galėtų tęsti VPN seansą.

Seanso trukmę galima sukonfigūruoti nuo vienos valandos iki devyniasdešimties dienų. Jei nustatysite tai Niekada, galėsite bet kada įjungti VPN seansus. Tai yra standartas.

Pakartotinis autentifikavimas

Vartotojas turi nutraukti VPN seansą ir prisijungti prie „Firezone“ portalo, kad galėtų iš naujo autentifikuoti pasibaigusį VPN seansą (URL nurodytas diegimo metu).

Seansą galite autentifikuoti iš naujo vadovaudamiesi čia pateiktomis tiksliomis kliento instrukcijomis.

 

VPN ryšio būsena

Vartotojų puslapio VPN ryšio lentelės stulpelyje rodoma vartotojo ryšio būsena. Tai yra ryšio būsenos:

ĮJUNGTA – ryšys įjungtas.

IŠJUNGTA – ryšį išjungė administratorius arba nepavyko atnaujinti OIDC.

EXPIRED – ryšys išjungtas dėl autentifikavimo galiojimo pabaigos arba vartotojas neprisijungė pirmą kartą.

"Google"

Naudodama bendrą OIDC jungtį, „Firezone“ įgalina vienkartinį prisijungimą (SSO) naudojant „Google Workspace“ ir „Cloud Identity“. Šis vadovas parodys, kaip gauti toliau išvardytus konfigūracijos parametrus, kurie yra būtini integravimui:

  1. discovery_document_uri: OpenID Connect teikėjo konfigūracijos URI kuris grąžina JSON dokumentą, naudojamą kuriant vėlesnes užklausas šiam OIDC teikėjui.
  2. client_id: programos kliento ID.
  3. client_secret: programos kliento paslaptis.
  4. redirect_uri: nurodo OIDC teikėjui, kur nukreipti po autentifikavimo. Tai turėtų būti jūsų Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/google/callback/).
  5. response_type: Nustatykite kodą.
  6. apimtis: OIDC apimtys gauti iš savo OIDC teikėjo. Tai turėtų būti nustatyta kaip atviras el. pašto profilis, kad „Firezone“ pateiktų naudotojo el. pašto adresą grąžintose pretenzijose.
  7. etiketė: mygtuko etiketės tekstas, rodomas jūsų Firezone prisijungimo ekrane.

Gaukite konfigūracijos nustatymus

1. OAuth konfigūracijos ekranas

Jei pirmą kartą kuriate naują „OAuth“ kliento ID, jūsų bus paprašyta sukonfigūruoti sutikimo ekraną.

* Vartotojo tipui pasirinkite Vidinis. Taip užtikrinama, kad įrenginio konfigūracijas galės kurti tik jūsų „Google Workspace“ organizacijos naudotojams priklausančios paskyros. NESIRINKITE Išorinis, nebent norite leisti visiems, turintiems galiojančią „Google“ paskyrą, kurti įrenginio konfigūracijas.

 

Programos informacijos ekrane:

  1. Programos pavadinimas: Firezone
  2. Programos logotipas: Firezone logotipas (išsaugoti nuorodą kaip).
  3. Pagrindinis programos puslapis: jūsų „Firezone“ egzemplioriaus URL.
  4. Įgalioti domenai: aukščiausio lygio jūsų Firezone egzemplioriaus domenas.

 

 

2. Sukurkite „OAuth“ kliento ID

Šis skyrius yra pagrįstas pačios „Google“ dokumentais nustatyti OAuth 2.0.

Apsilankykite „Google Cloud Console“. Kredencialų puslapis puslapyje spustelėkite + Kurti kredencialus ir pasirinkite OAuth kliento ID.

„OAuth“ kliento ID kūrimo ekrane:

  1. Nustatykite programos tipą į žiniatinklio programą
  2. Pridėkite „Firezone“ EXTERNAL_URL + /auth/oidc/google/callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/google/callback/) kaip įgaliotųjų peradresavimo URI įrašą.

 

Sukūrę OAuth kliento ID, jums bus suteiktas kliento ID ir kliento paslaptis. Kitame veiksme jie bus naudojami kartu su peradresavimo URI.

Firezone integracija

Redaguoti /etc/firezone/firezone.rb įtraukti toliau nurodytas parinktis:

 

# Naudojant „Google“ kaip SSO tapatybės teikėją

default['firezone']['autentifikacija']['oidc'] = {

  google: {

    discovery_document_uri: „https://accounts.google.com/.well-known/openid-configuration“,

    kliento_id: " ”,

    client_secret: " ”,

    redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/google/callback/“,

    atsako_tipas: "kodas",

    taikymo sritis: „atviras el. pašto profilis“,

    etiketė: „Google“

  }

}

 

Paleiskite firezone-ctl perkonfigūruoti ir firezone-ctl paleiskite iš naujo, kad atnaujintumėte programą. Dabar šakniniame Firezone URL turėtumėte matyti mygtuką Prisijungti naudojant „Google“.

Okta

„Firezone“ naudoja bendrą OIDC jungtį, kad palengvintų vienkartinį prisijungimą (SSO) naudojant „Okta“. Ši pamoka parodys, kaip gauti toliau išvardytus konfigūracijos parametrus, kurie būtini integruojant:

  1. discovery_document_uri: OpenID Connect teikėjo konfigūracijos URI kuris grąžina JSON dokumentą, naudojamą kuriant vėlesnes užklausas šiam OIDC teikėjui.
  2. client_id: programos kliento ID.
  3. client_secret: programos kliento paslaptis.
  4. redirect_uri: nurodo OIDC teikėjui, kur nukreipti po autentifikavimo. Tai turėtų būti jūsų Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/okta/callback/).
  5. response_type: Nustatykite kodą.
  6. apimtis: OIDC apimtys gauti iš savo OIDC teikėjo. Tai turėtų būti nustatyta kaip atviras el. pašto profilis offline_access, kad „Firezone“ pateiktų naudotojo el. pašto adresą grąžintose pretenzijose.
  7. etiketė: mygtuko etiketės tekstas, rodomas jūsų Firezone prisijungimo ekrane.

 

Integruokite „Okta“ programą

Šis vadovo skyrius pagrįstas Oktos dokumentacija.

Administratoriaus pulte eikite į Programos > Programos ir spustelėkite Kurti programų integravimą. Nustatykite Prisijungimo metodą į OICD – „OpenID Connect“ ir „Application type“ kaip žiniatinklio programą.

Konfigūruokite šiuos nustatymus:

  1. Programos pavadinimas: Firezone
  2. Programos logotipas: Firezone logotipas (išsaugoti nuorodą kaip).
  3. Dotacijos tipas: pažymėkite langelį Refresh Token. Tai užtikrina, kad „Firezone“ sinchronizuojasi su tapatybės teikėju, o VPN prieiga nutraukiama pašalinus vartotoją.
  4. Prisijungimo peradresavimo URI: pridėkite „Firezone“ EXTERNAL_URL + /auth/oidc/okta/callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/okta/callback/) kaip įgaliotųjų peradresavimo URI įrašą. .
  5. Užduotys: apsiribokite grupėmis, kurioms norite suteikti prieigą prie savo „Firezone“ egzemplioriaus.

Išsaugojus nustatymus, jums bus suteiktas kliento ID, kliento paslaptis ir Okta domenas. Šios 3 reikšmės bus naudojamos 2 veiksme konfigūruojant Firezone.

Integruoti Firezone

Redaguoti /etc/firezone/firezone.rb kad įtrauktumėte toliau pateiktas parinktis. Tavo Discovery_document_url bus /.gerai žinoma/openid-configuration pridėta prie jūsų pabaigos okta_domain.

 

# Naudojant „Okta“ kaip SSO tapatybės teikėją

default['firezone']['autentifikacija']['oidc'] = {

  gerai: {

    Discovery_document_uri: „https:// /.well-known/openid-configuration“,

    kliento_id: " ”,

    client_secret: " ”,

    redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/okta/callback/“,

    atsako_tipas: "kodas",

    taikymo sritis: „atviras el. pašto profilis offline_access“,

    etiketė: "Okta"

  }

}

 

Paleiskite firezone-ctl perkonfigūruoti ir firezone-ctl paleiskite iš naujo, kad atnaujintumėte programą. Dabar šakniniame „Firezone“ URL turėtumėte pamatyti mygtuką Prisijungti naudojant „Okta“.

 

Apriboti prieigą tik tam tikriems vartotojams

„Okta“ gali apriboti vartotojus, kurie gali pasiekti „Firezone“ programą. Norėdami tai padaryti, eikite į „Okta Admin Console“ „Firezone App Integration“ užduočių puslapį.

Azure Active Directory

Per bendrąją OIDC jungtį „Firezone“ įgalina vienkartinį prisijungimą (SSO) naudojant „Azure Active Directory“. Šiame vadove bus parodyta, kaip gauti toliau išvardytus konfigūracijos parametrus, kurie yra būtini integravimui:

  1. discovery_document_uri: OpenID Connect teikėjo konfigūracijos URI kuris grąžina JSON dokumentą, naudojamą kuriant vėlesnes užklausas šiam OIDC teikėjui.
  2. client_id: programos kliento ID.
  3. client_secret: programos kliento paslaptis.
  4. redirect_uri: nurodo OIDC teikėjui, kur nukreipti po autentifikavimo. Tai turėtų būti jūsų Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/azure/callback/).
  5. response_type: Nustatykite kodą.
  6. apimtis: OIDC apimtys gauti iš savo OIDC teikėjo. Tai turėtų būti nustatyta kaip atviras el. pašto profilis offline_access, kad „Firezone“ pateiktų naudotojo el. pašto adresą grąžintose pretenzijose.
  7. etiketė: mygtuko etiketės tekstas, rodomas jūsų Firezone prisijungimo ekrane.

Gaukite konfigūracijos nustatymus

Šis vadovas sudarytas iš Azure Active Directory dokumentai.

 

Eikite į „Azure“ portalo „Azure Active Directory“ puslapį. Pasirinkite meniu parinktį Tvarkyti, pasirinkite Nauja registracija, tada užsiregistruokite pateikdami toliau pateiktą informaciją:

  1. Pavadinimas: Firezone
  2. Palaikomi paskyros tipai: (tik numatytasis katalogas – vienas nuomininkas)
  3. Peradresavimo URI: tai turėtų būti jūsų „Firezone“ EXTERNAL_URL + /auth/oidc/azure/callback/ (pvz., https://instance-id.yourfirezone.com/auth/oidc/azure/callback/). Įsitikinkite, kad įtraukėte pasvirąjį brūkšnį. Tai bus redirect_uri reikšmė.

 

Užsiregistravę atidarykite išsamią programos peržiūrą ir nukopijuokite Programos (kliento) ID. Tai bus kliento_id vertė. Tada atidarykite galinių taškų meniu, kad gautumėte OpenID Connect metaduomenų dokumentas. Tai bus Discovery_document_uri reikšmė.

 

Sukurkite naują kliento paslaptį spustelėdami parinktį Sertifikatai ir paslaptys meniu Tvarkyti. Nukopijuokite kliento paslaptį; kliento slaptoji vertė bus tokia.

 

Galiausiai meniu Tvarkyti pasirinkite API leidimų nuorodą, spustelėkite Pridėkite leidimąir pasirinkite „Microsoft Graph“. Pridėti email, atviras, offline_access ir profilis gauti reikiamus leidimus.

Firezone integracija

Redaguoti /etc/firezone/firezone.rb įtraukti toliau nurodytas parinktis:

 

# „Azure Active Directory“ naudojimas kaip SSO tapatybės teikėjas

default['firezone']['autentifikacija']['oidc'] = {

  žydra: {

    discovery_document_uri: „https://login.microsoftonline.com/ /v2.0/.well-known/openid-configuration“,

    kliento_id: " ”,

    client_secret: " ”,

    redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/azure/callback/“,

    atsako_tipas: "kodas",

    taikymo sritis: „atviras el. pašto profilis offline_access“,

    etiketė: "Azure"

  }

}

 

Paleiskite firezone-ctl perkonfigūruoti ir firezone-ctl paleiskite iš naujo, kad atnaujintumėte programą. Dabar šakniniame Firezone URL turėtumėte matyti mygtuką Prisijungti naudojant Azure.

Kaip: apriboti prieigą tik tam tikriems nariams

„Azure AD“ leidžia administratoriams apriboti programos prieigą tik konkrečiai jūsų įmonės vartotojų grupei. Daugiau informacijos apie tai, kaip tai padaryti, rasite „Microsoft“ dokumentacijoje.

Administruoti

  • Nustatyti
  • Tvarkyti diegimą
  • patobulinti
  • Šalinti
  • Saugumo sumetimai
  • SQL užklausų vykdymas

Nustatyti

„Firezone“ naudoja „Chef Omnibus“ užduotims, įskaitant išleidimo pakavimą, procesų priežiūrą, žurnalų tvarkymą ir kt., valdyti.

Rubino kodas sudaro pirminį konfigūracijos failą, esantį /etc/firezone/firezone.rb. Iš naujo paleidus sudo firezone-ctl perkonfigūruoti atlikus šio failo pakeitimus, „Chef“ atpažįsta pakeitimus ir pritaikys juos esamai operacinei sistemai.

Išsamų konfigūracijos kintamųjų sąrašą ir jų aprašymus rasite konfigūracijos failo nuorodoje.

Tvarkyti diegimą

Jūsų „Firezone“ egzempliorius gali būti valdomas naudojant firezone-ctl komanda, kaip parodyta žemiau. Daugumai subkomandų reikia priešdėlio su : sudo.

 

root@demo:~# firezone-ctl

omnibus-ctl: komanda (antrinė komanda)

Bendrosios komandos:

  valyti

    Ištrinkite *visus* firezone duomenis ir pradėkite nuo nulio.

  Create-or-Reset-admin

    Iš naujo nustato administratoriaus slaptažodį su el. pašto adresu, nurodytu pagal numatytuosius nustatymus['firezone']['admin_email'], arba sukuria naują administratorių, jei tokio el. pašto nėra.

  padėti

    Išspausdinkite šį pagalbos pranešimą.

  perkonfigūruoti

    Iš naujo sukonfigūruokite programą.

  iš naujo nustatyti tinklą

    Grąžina nftables, WireGuard sąsają ir maršruto parinkimo lentelę į numatytuosius Firezone nustatymus.

  Rodyti konfigūraciją

    Parodykite konfigūraciją, kuri būtų sugeneruota perkonfigūravus.

  griovimo tinklas

    Pašalina WireGuard sąsają ir firezone nftables lentelę.

  force-cert-atnaujinimas

    Priverskite atnaujinti sertifikatą dabar, net jei jo galiojimo laikas nepasibaigęs.

  stop-cert-renewal

    Pašalina cronjob, kuris atnaujina sertifikatus.

  pašalinti

    Užmuškite visus procesus ir pašalinkite proceso prižiūrėtoją (duomenys bus išsaugoti).

  versija

    Rodyti dabartinę Firezone versiją

Paslaugų valdymo komandos:

  grakštus-žudyti

    Pabandykite grakščiai sustabdyti, tada SIGKILL visą proceso grupę.

  hup

    Siųsti paslaugas HUP.

  int

    Siųsti paslaugoms INT.

  nužudyti

    Nusiųskite paslaugoms KILL.

  kartą

    Paleiskite paslaugas, jei jos neveikia. Neužveskite jų iš naujo, jei jie sustos.

  restartas

    Sustabdykite paslaugas, jei jos veikia, tada paleiskite jas iš naujo.

  paslaugų sąrašas

    Išvardykite visas paslaugas (įjungtos paslaugos rodomos su *.)

  pradžia

    Paleiskite paslaugas, jei jos neveikia, ir paleiskite iš naujo, jei jos sustos.

  statusas

    Rodyti visų paslaugų būseną.

  sustabdyti

    Sustabdykite paslaugas ir nepaleiskite jų iš naujo.

  uodega

    Stebėkite visų įgalintų paslaugų paslaugų žurnalus.

  terminas

    Siųsti paslaugoms TERM.

  usr1

    Nusiųskite paslaugoms USR1.

  usr2

    Nusiųskite paslaugoms USR2.

patobulinti

Visos VPN sesijos turi būti nutrauktos prieš atnaujinant „Firezone“, o tai taip pat reikalauja išjungti žiniatinklio vartotojo sąsają. Jei atnaujinimo metu kažkas negerai, patariame skirti valandą techninei priežiūrai.

 

Norėdami patobulinti „Firezone“, atlikite šiuos veiksmus:

  1. Atnaujinkite Firezone paketą naudodami vienos komandos diegimą: sudo -E bash -c "$(curl -fsSL https://github.com/firezone/firezone/raw/master/scripts/install.sh)"
  2. Paleiskite firezone-ctl perkonfigūruoti, kad gautumėte naujus pakeitimus.
  3. Norėdami iš naujo paleisti paslaugas, paleiskite firezone-ctl restart.

Jei iškiltų kokių nors problemų, praneškite mums iki pateikdamas paramos bilietą.

Atnaujinkite iš <0.5.0 į >=0.5.0

0.5.0 versijoje yra keletas lūžtančių pakeitimų ir konfigūracijos modifikacijų, į kurias reikia atkreipti dėmesį. Sužinokite daugiau žemiau.

Sugrupuotos Nginx non_ssl_port (HTTP) užklausos pašalintos

Nuo 0.5.0 versijos „Nginx“ nebepalaiko priverstinio SSL ir ne SSL prievado parametrų. Kadangi „Firezone“ reikia SSL, kad veiktų, patariame pašalinti „Nginx“ paslaugos paketą nustačius numatytąjį ['firezone']['nginx']['enabled'] = false ir nukreipti atvirkštinį tarpinį serverį į Phoenix programą 13000 prievade (pagal numatytuosius nustatymus). ).

ACME protokolo palaikymas

0.5.0 pristato ACME protokolo palaikymą, skirtą automatiškai atnaujinti SSL sertifikatus naudojant „Nginx“ paslaugą. Norėdami įjungti,

  • Įsitikinkite, kad numatytasis ['firezone']['external_url'] turi galiojantį FQDN, kuris nustato jūsų serverio viešąjį IP adresą.
  • Įsitikinkite, kad prievadas 80/tcp pasiekiamas
  • Įgalinkite ACME protokolo palaikymą numatytuoju ['firezone']['ssl']['acme']['enabled'] = true konfigūracijos faile.

Sutampančios išėjimo taisyklės paskirties vietos

„Firezone 0.5.0“ nebegalima pridėti taisyklių su pasikartojančiomis paskirties vietomis. Mūsų perkėlimo scenarijus automatiškai atpažins šias situacijas atnaujindamas iki 0.5.0 ir išlaikys tik tas taisykles, kurių paskirties vietoje yra kita taisyklė. Jei tai gerai, nieko nereikia daryti.

Priešingu atveju, prieš atnaujinant, patariame pakeisti taisyklių rinkinį, kad išvengtumėte šių situacijų.

Išankstinis „Okta“ ir „Google“ SSO konfigūravimas

„Firezone 0.5.0“ pašalina senojo stiliaus „Okta“ ir „Google SSO“ konfigūracijos palaikymą, o naujoji, lankstesnė OIDC pagrįsta konfigūracija. 

Jei turite kokių nors konfigūracijų pagal numatytuosius ['firezone']['authentication']['okta'] arba numatytuosius ['firezone']['authentication']['google'] raktus, turite perkelti juos į mūsų OIDC. -pagrįsta konfigūracija, naudojant toliau pateiktą vadovą.

Esama „Google OAuth“ konfigūracija

Pašalinkite šias eilutes, kuriose yra senos „Google OAuth“ konfigūracijos, iš konfigūracijos failo, esančio /etc/firezone/firezone.rb

 

numatytasis['firezone']['autentifikavimas']['google']['įjungtas']

numatytasis['firezone']['autentifikavimas']['google']['client_id']

numatytasis['firezone']['autentifikavimas']['google']['client_secret']

numatytasis['firezone']['autentifikavimas']['google']['redirect_uri']

 

Tada sukonfigūruokite „Google“ kaip OIDC teikėją, vykdydami čia pateiktas procedūras.

(Pateikite nuorodos instrukcijas)<<<<<<<<<<<<<<<<

 

Konfigūruoti esamą „Google OAuth“. 

Pašalinkite šias eilutes, kuriose yra senos „Okta OAuth“ konfigūracijos, iš konfigūracijos failo, esančio adresu /etc/firezone/firezone.rb

 

numatytasis['firezone']['autentifikavimas']['okta']['įjungtas']

numatytasis['firezone']['autentifikavimas']['okta']['kliento_id']

numatytasis['firezone']['autentifikavimas']['okta']['client_secret']

Numatytasis['firezone']['autentifikavimas']['okta']['svetainė']

 

Tada sukonfigūruokite „Okta“ kaip OIDC teikėją, vykdydami čia pateiktas procedūras.

Atnaujinkite iš 0.3.x į >= 0.3.16

Atsižvelgiant į dabartinę sąranką ir versiją, laikykitės toliau pateiktų nurodymų.

Jei jau turite OIDC integraciją:

Kai kuriems OIDC teikėjams atnaujinant iki >= 0.3.16, reikia gauti atnaujinimo prieigos raktą neprisijungus. Taip užtikrinama, kad „Firezone“ atnaujintų tapatybės teikėją ir kad VPN ryšys būtų išjungtas ištrynus vartotoją. Ankstesnėse „Firezone“ iteracijose šios funkcijos trūko. Kai kuriais atvejais naudotojai, kurie buvo ištrinti iš jūsų tapatybės teikėjo, vis tiek gali būti prisijungę prie VPN.

Būtina įtraukti prieigą neprisijungus į OIDC konfigūracijos taikymo srities parametrą OIDC teikėjams, kurie palaiko neprisijungus pasiekiamą prieigą. Firezone-ctl perkonfigūravimas turi būti atliktas, kad būtų pritaikyti Firezone konfigūracijos failo, esančio /etc/firezone/firezone.rb, pakeitimai.

Jei „Firezone“ galės sėkmingai nuskaityti atnaujinimo prieigos raktą, naudotojams, kuriuos autentifikavo jūsų OIDC teikėjas, žiniatinklio sąsajos naudotojo informacijos puslapyje matysite antraštę „OIDC Connections“.

Jei tai neveikia, turėsite ištrinti esamą OAuth programą ir pakartoti OIDC sąrankos veiksmus, kad sukurti naują programos integraciją .

Turiu OAuth integravimą

Iki 0.3.11 „Firezone“ naudojo iš anksto sukonfigūruotus „OAuth2“ teikėjus. 

Sekti instrukcijas čia pereiti prie OIDC.

Aš nesu integravęs tapatybės teikėjo

Nereikia jokių veiksmų. 

Galite vadovautis instrukcijomis čia įgalinti SSO per OIDC teikėją.

Atnaujinkite iš 0.3.1 į >= 0.3.2

Vietoj to numatytasis ['firezone']['external url'] pakeitė konfigūracijos parinktį default['firezone']['fqdn']. 

Nustatykite tai savo Firezone internetinio portalo, kuris yra prieinamas plačiajai visuomenei, URL. Numatyta, kad jis bus https:// ir jūsų serverio FQDN, jei jis nebus apibrėžtas.

Konfigūracijos failas yra /etc/firezone/firezone.rb. Išsamų konfigūracijos kintamųjų sąrašą ir jų aprašymus rasite konfigūracijos failo nuorodoje.

Atnaujinkite iš 0.2.x į 0.3.x

Nuo 0.3.0 versijos „Firezone“ nebesaugo įrenginio privačių raktų „Firezone“ serveryje. 

„Firezone“ žiniatinklio vartotojo sąsaja neleis iš naujo atsisiųsti ar peržiūrėti šių konfigūracijų, tačiau visi esami įrenginiai turėtų veikti taip, kaip yra.

Atnaujinkite iš 0.1.x į 0.2.x

Jei atnaujinate iš Firezone 0.1.x, yra keli konfigūracijos failo pakeitimai, kuriuos reikia atlikti rankiniu būdu. 

Norėdami atlikti reikiamus failo /etc/firezone/firezone.rb pakeitimus, vykdykite toliau pateiktas komandas kaip root.

 

cp /etc/firezone/firezone.rb /etc/firezone/firezone.rb.bak

sed -i "s/\['įgalinti'\]/\['įjungta'\]/" /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 perkonfigūruoti

firezone-ctl paleiskite iš naujo

Problemų

„Firezone“ žurnalų patikrinimas yra pirmasis protingas žingsnis siekiant išspręsti bet kokias problemas.

Paleiskite sudo firezone-ctl uodegą, kad peržiūrėtumėte Firezone žurnalus.

Ryšio problemų derinimas

Dauguma „Firezone“ ryšio problemų kyla dėl nesuderinamų „iptables“ arba „nftables“ taisyklių. Turite įsitikinti, kad jūsų galiojančios taisyklės neprieštarauja Firezone taisyklėms.

Interneto ryšys sumažėja, kai tunelis yra aktyvus

Įsitikinkite, kad FORWARD grandinė leidžia paketus iš jūsų „WireGuard“ klientų į tas vietas, kurias norite leisti per „Firezone“, jei jūsų interneto ryšys pablogėja kiekvieną kartą, kai suaktyvinate „WireGuard“ tunelį.

 

Tai galima pasiekti, jei naudojate ufw užtikrindami, kad numatytoji maršruto parinkimo politika būtų leidžiama:

 

ubuntu@fz: ~$ sudo ufw numatytasis leidimas nukreiptas

Numatytoji nukreipimo politika pakeista į „leisti“

(būtinai atitinkamai atnaujinkite savo taisykles)

 

A Oho įprasto „Firezone“ serverio būsena gali atrodyti taip:

 

ubuntu@fz:~$ sudo ufw statusas

Būsena: aktyvi

Prisijungimas: įjungtas (žemas)

Numatytasis: neleisti (įeinantis), leisti (išeinantis), leisti (nukreiptas)

Nauji profiliai: praleisti

 

Į veiksmą nuo

------

22/tcp Įleisti bet kur

80/tcp Įleisti bet kur

443/tcp LEISTI bet kur

51820/udp LEISTI bet kur

22/tcp (v6) leisti bet kur (v6)

80/tcp (v6) leisti bet kur (v6)

443/tcp (v6) leisti bet kur (v6)

51820/udp (v6) leisti bet kur (v6)

Saugumo sumetimai

Rekomenduojame apriboti prieigą prie žiniatinklio sąsajos ypač jautriems ir svarbiems gamybos diegimams, kaip paaiškinta toliau.

Paslaugos ir uostai

 

tarnyba

Numatytasis prievadas

Klausyti Adresas

Aprašymas

nginx

80, 443

visi

Viešas HTTP(S) prievadas, skirtas administruoti Firezone ir palengvinti autentifikavimą.

Laidininkas

51820

visi

Viešasis „WireGuard“ prievadas, naudojamas VPN sesijoms. (UDP)

postgresql

15432

127.0.0.1

Tik vietinis prievadas, naudojamas susietam Postgresql serveriui.

"Phoenix"

13000

127.0.0.1

Tik vietinis prievadas, kurį naudoja „elixir“ programos serveris.

Gamybos diegimas

Patariame pagalvoti apie prieigos prie „Firezone“ viešai rodomos žiniatinklio vartotojo sąsajos (pagal numatytuosius prievadus 443/tcp ir 80/tcp) apribojimą, o vietoj to naudoti „WireGuard“ tunelį „Firezone“ valdymui gamybiniams ir viešiesiems diegimams, kai vienas administratorius bus atsakingas. įrenginių konfigūracijų kūrimas ir platinimas galutiniams vartotojams.

 

Pavyzdžiui, jei administratorius sukūrė įrenginio konfigūraciją ir tunelį su vietiniu WireGuard adresu 10.3.2.2, ši ufw konfigūracija leistų administratoriui pasiekti Firezone žiniatinklio vartotojo sąsają serverio wg-firezone sąsajoje naudojant numatytąją 10.3.2.1 tunelio adresas:

 

root@demo:~# ufw būsena, išsami

Būsena: aktyvi

Prisijungimas: įjungtas (žemas)

Numatytasis: neleisti (įeinantis), leisti (išeinantis), leisti (nukreiptas)

Nauji profiliai: praleisti

 

Į veiksmą nuo

------

22/tcp Įleisti bet kur

51820/udp LEISTI bet kur

Visur LEISTI 10.3.2.2

22/tcp (v6) leisti bet kur (v6)

51820/udp (v6) leisti bet kur (v6)

Tai liktų tik 22/tcp prieinama prie SSH serverio valdymui (neprivaloma) ir 51820/udp atidengtas siekiant sukurti WireGuard tunelius.

Vykdykite SQL užklausas

Firezone sujungia Postgresql serverį ir atitikimą psql įrankis, kurį galima naudoti iš vietinio apvalkalo, pavyzdžiui:

 

/opt/firezone/embedded/bin/psql \

  -U ugnies zona \

  -d ugnies zona \

  -h localhost \

  -p 15432 \

  -c „SQL_STATEMENT“

 

Tai gali būti naudinga derinant.

 

Bendros užduotys:

 

  • Visų vartotojų sąrašas
  • Visų įrenginių sąrašas
  • Vartotojo vaidmens keitimas
  • Duomenų bazės atsarginės kopijos kūrimas



Visų vartotojų sąrašas:

 

/opt/firezone/embedded/bin/psql \

  -U ugnies zona \

  -d ugnies zona \

  -h localhost \

  -p 15432 \

  -c „SELECT * FROM vartotojų;“



Visų įrenginių sąrašas:

 

/opt/firezone/embedded/bin/psql \

  -U ugnies zona \

  -d ugnies zona \

  -h localhost \

  -p 15432 \

  -c „Pasirinkti * IŠ įrenginių;“



Pakeiskite vartotojo vaidmenį:

 

Nustatykite vaidmenį kaip „administratorius“ arba „neprivilegijuotas“:

 

/opt/firezone/embedded/bin/psql \

  -U ugnies zona \

  -d ugnies zona \

  -h localhost \

  -p 15432 \

  -c "ATNAUJINTI naudotojus SET role = "admin" WHERE email = "user@example.com";"



Duomenų bazės atsarginės kopijos kūrimas:

 

Be to, įtraukta pg dump programa, kuri gali būti naudojama reguliariai daryti atsargines duomenų bazės kopijas. Vykdykite šį kodą, kad išmestumėte duomenų bazės kopiją įprastu SQL užklausos formatu (pakeiskite /path/to/backup.sql į vietą, kurioje turėtų būti sukurtas SQL failas):

 

/opt/firezone/embedded/bin/pg_dump \

  -U ugnies zona \

  -d ugnies zona \

  -h localhost \

  -p 15432 > /path/to/backup.sql

Vartotojo vadovai

  • Pridėti vartotojų
  • Pridėti įrenginius
  • Išėjimo taisyklės
  • Kliento instrukcijos
  • Padalinto tunelio VPN
  • Atvirkštinis tunelis 
  • NAT vartai

Pridėti vartotojų

Sėkmingai įdiegę „Firezone“, turite pridėti vartotojų, kad suteiktumėte jiems prieigą prie tinklo. Tam naudojama žiniatinklio vartotojo sąsaja.

 

Interneto naršyklė


Pasirinkę mygtuką „Pridėti vartotoją“, esantį /users, galite pridėti vartotoją. Vartotojui reikės pateikti el. pašto adresą ir slaptažodį. Kad jūsų organizacijos naudotojai galėtų pasiekti automatiškai, „Firezone“ taip pat gali susieti ir sinchronizuoti su tapatybės teikėju. Daugiau informacijos rasite adresu autentifikuoti. < Pridėkite nuorodą į autentifikavimą

Pridėti įrenginius

Rekomenduojame paprašyti naudotojų sukurti savo įrenginio konfigūracijas, kad privatus raktas būtų matomas tik jiems. Vartotojai gali sukurti savo įrenginio konfigūracijas vadovaudamiesi instrukcijomis Kliento instrukcijos puslapį.

 

Generuojama administratoriaus įrenginio konfigūracija

Visas vartotojo įrenginių konfigūracijas gali sukurti „Firezone“ administratoriai. Vartotojo profilio puslapyje, esančiame adresu /users, pasirinkite parinktį „Pridėti įrenginį“, kad tai atliktumėte.

 

[Įterpti ekrano kopiją]

 

Sukūrę įrenginio profilį, galite el. paštu išsiųsti vartotojui „WireGuard“ konfigūracijos failą.

 

Vartotojai ir įrenginiai yra susieti. Norėdami gauti daugiau informacijos apie tai, kaip pridėti vartotoją, žr Pridėti vartotojų.

Išėjimo taisyklės

Naudodama branduolio tinklo filtrų sistemą, Firezone įgalina išėjimo filtravimo galimybes nurodyti DROP arba ACCEPT paketus. Visas eismas paprastai leidžiamas.

 

IPv4 ir IPv6 CIDR ir IP adresai palaikomi atitinkamai per leistinų ir uždraustų sąrašą. Galite pasirinkti taikyti taisyklę vartotojui, kai ją pridedate, o tai taikys taisyklę visiems to naudotojo įrenginiams.

Kliento instrukcijos

Įdiekite ir konfigūruokite

Norėdami užmegzti VPN ryšį naudodami vietinį „WireGuard“ klientą, žr. šį vadovą.

 

1. Įdiekite vietinį „WireGuard“ klientą

 

Čia esantys oficialūs „WireGuard“ klientai yra suderinami su „Firezone“:

 

MacOS

 

Windows

 

"iOS"

 

Android

 

Apsilankykite oficialioje „WireGuard“ svetainėje adresu https://www.wireguard.com/install/, jei naudojate anksčiau nepaminėtas OS sistemas.

 

2. Atsisiųskite įrenginio konfigūracijos failą

 

„Firezone“ administratorius arba jūs galite sugeneruoti įrenginio konfigūracijos failą naudodami „Firezone“ portalą.

 

Apsilankykite URL, kurį suteikė Firezone administratorius, kad patys sukurtumėte įrenginio konfigūracijos failą. Jūsų įmonė tam turės unikalų URL; šiuo atveju tai yra https://instance-id.yourfirezone.com.

 

Prisijunkite prie Firezone Okta SSO

 

[Įterpti ekrano kopiją]

 

3. Pridėkite kliento konfigūraciją

 

Importuokite .conf failą į WireGuard klientą atidarydami jį. Apversdami aktyvinimo jungiklį galite pradėti VPN seansą.

 

[Įterpti ekrano kopiją]

Seanso pakartotinis autentifikavimas

Vykdykite toliau pateiktas instrukcijas, jei tinklo administratorius įpareigojo pasikartojantį autentifikavimą, kad VPN ryšys liktų aktyvus. 



Tau reikia:

 

Firezone portalo URL: klauskite tinklo administratoriaus dėl ryšio.

Jūsų tinklo administratorius turėtų galėti pasiūlyti jūsų prisijungimo vardą ir slaptažodį. Firezone svetainė paragins prisijungti naudojant vieno prisijungimo paslaugą, kurią naudoja jūsų darbdavys (pvz., Google arba Okta).

 

1. Išjunkite VPN ryšį

 

[Įterpti ekrano kopiją]

 

2. Autentifikuokite dar kartą 

Eikite į Firezone portalo URL ir prisijunkite naudodami tinklo administratoriaus pateiktus kredencialus. Jei jau esate prisijungę, prieš vėl prisijungdami spustelėkite mygtuką Iš naujo autentifikuoti.

 

[Įterpti ekrano kopiją]

 

3 veiksmas: paleiskite VPN sesiją

[Įterpti ekrano kopiją]

Tinklo tvarkyklė, skirta Linux

Norėdami importuoti WireGuard konfigūracijos profilį naudodami Network Manager CLI Linux įrenginiuose, vadovaukitės šiomis instrukcijomis (nmcli).

PASTABA

Jei profilyje įjungtas IPv6 palaikymas, bandymas importuoti konfigūracijos failą naudojant tinklo tvarkyklės GUI gali nepavykti ir atsiranda tokia klaida:

ipv6.method: metodas „auto“ nepalaikomas „WireGuard“.

1. Įdiekite WireGuard Tools 

Būtina įdiegti „WireGuard“ vartotojo erdvės paslaugų programas. Tai bus paketas, vadinamas wireguard arba wireguard-tools, skirtas Linux platinimui.

Ubuntu / Debian:

sudo apt install wireguard

Norėdami naudoti Fedora:

sudo dnf įdiegti wireguard-tools

Arch Linux:

sudo pacman -S wireguard-tools

Apsilankykite oficialioje „WireGuard“ svetainėje adresu https://www.wireguard.com/install/, jei norite gauti platinimus, kurie nepaminėti aukščiau.

2. Atsisiųskite konfigūraciją 

„Firezone“ administratorius arba savarankiškai generuojantys asmenys gali sugeneruoti įrenginio konfigūracijos failą naudodami „Firezone“ portalą.

Apsilankykite URL, kurį suteikė Firezone administratorius, kad patys sukurtumėte įrenginio konfigūracijos failą. Jūsų įmonė tam turės unikalų URL; šiuo atveju tai yra https://instance-id.yourfirezone.com.

[Įterpti ekrano kopiją]

3. Importuoti nustatymus

Importuokite pateiktą konfigūracijos failą naudodami nmcli:

sudo nmcli ryšio importo tipas Wireguard failas /path/to/configuration.conf

PASTABA

Konfigūracijos failo pavadinimas atitiks „WireGuard“ ryšį / sąsają. Po importavimo ryšį galima pervardyti, jei reikia:

nmcli ryšys modifikuoti [senas pavadinimas] connect.id [naujas pavadinimas]

4. Prijunkite arba atjunkite

Per komandinę eilutę prisijunkite prie VPN taip:

nmcli prijungimas [vpn pavadinimas]

Norėdami atsijungti:

nmcli ryšys nutrūko [vpn pavadinimas]

Atitinkamą tinklo tvarkyklės programėlę taip pat galima naudoti ryšiui valdyti, jei naudojama GUI.

Automatinis ryšys

Automatinio prisijungimo parinktis pasirinkus „taip“, VPN ryšį galima sukonfigūruoti taip, kad prisijungtų automatiškai:

 

nmcli ryšys modifikuoti [vpn pavadinimas] ryšį. <<<<<<<<<<<<<<<<<<<<<<

 

automatinis prisijungimas taip

 

Norėdami išjungti automatinį ryšį, nustatykite jį į ne:

 

nmcli ryšys modifikuoti [vpn pavadinimas] ryšį.

 

automatinis prijungimas Nr

Padarykite kelių veiksnių autentifikavimą prieinamu

Norėdami suaktyvinti MFA Eikite į Firezone portalo /user account/register MFA puslapį. Naudokite autentifikavimo programą, kad nuskaitytumėte QR kodą, kai jis buvo sugeneruotas, tada įveskite šešių skaitmenų kodą.

Jei pametėte autentifikavimo programą, susisiekite su administratoriumi, kad iš naujo nustatytumėte paskyros prieigos informaciją.

Padalinto tunelio VPN

Ši instrukcija padės jums nustatyti „WireGuard“ padalinto tuneliavimo funkciją naudojant „Firezone“, kad per VPN serverį būtų persiunčiamas tik srautas į konkrečius IP diapazonus.

 

1. Sukonfigūruokite leidžiamus IP adresus 

IP diapazonai, pagal kuriuos klientas nukreips tinklo srautą, yra nurodyti lauke Leistini IP, esančiame puslapyje /settings/default. Šio lauko pakeitimai turės įtakos tik naujai sukurtoms „Firezone“ sukurtoms „WireGuard“ tunelio konfigūracijoms.

 

[Įterpti ekrano kopiją]



Numatytoji reikšmė yra 0.0.0.0/0, ::/0, kuri nukreipia visą tinklo srautą iš kliento į VPN serverį.

 

Šiame lauke esančių verčių pavyzdžiai:

 

0.0.0.0/0, ::/0 – visas tinklo srautas bus nukreiptas į VPN serverį.

192.0.2.3/32 – į VPN serverį bus nukreipiamas tik srautas į vieną IP adresą.

3.5.140.0/22 ​​– į VPN serverį bus nukreipiamas tik 3.5.140.1 – 3.5.143.254 diapazono IP srautas. Šiame pavyzdyje buvo naudojamas ap-northeast-2 AWS regiono CIDR diapazonas.



PASTABA

Firezone pirmiausia pasirenka išėjimo sąsają, susietą su tiksliausiu maršrutu, kai nustato, kur nukreipti paketą.

 

2. Atkurkite WireGuard konfigūracijas

Vartotojai turi iš naujo sukurti konfigūracijos failus ir įtraukti juos į savo vietinį „WireGuard“ klientą, kad atnaujintų esamus vartotojo įrenginius naudodami naują padalinto tunelio konfigūraciją.

 

Instrukcijas žr pridėti įrenginį. <<<<<<<<<<< Pridėti nuorodą

Atvirkštinis tunelis

Šiame vadove bus parodyta, kaip susieti du įrenginius naudojant Firezone kaip relę. Įprastas naudojimo atvejis yra leisti administratoriui pasiekti serverį, konteinerį ar įrenginį, kuris yra apsaugotas NAT arba ugniasienės.

 

Mazgas prie mazgo 

Šioje iliustracijoje parodytas paprastas scenarijus, kai įrenginiai A ir B stato tunelį.

 

[Įterpti Firezone architektūrinį paveikslėlį]

 

Pradėkite kurdami įrenginį A ir įrenginį B, eidami į /users/[naudotojo_id]/naujas_įrenginys. Kiekvieno įrenginio nustatymuose įsitikinkite, kad toliau nurodyti parametrai yra nustatyti į toliau nurodytas vertes. Kurdami įrenginio konfigūraciją galite nustatyti įrenginio nustatymus (žr. Įrenginių pridėjimas). Jei reikia atnaujinti esamo įrenginio nustatymus, tai galite padaryti sugeneruodami naują įrenginio konfigūraciją.

 

Atminkite, kad visi įrenginiai turi /settings/defaults puslapį, kuriame galima konfigūruoti PersistentKeepalive.

 

Prietaisas A.

 

Leistini IP = 10.3.2.2/32

  Tai yra įrenginio B IP arba IP diapazonas

PersistentKeepalive = 25

  Jei įrenginys yra už NAT, tai užtikrina, kad įrenginys gali išlaikyti tunelį ir toliau gauti paketus iš WireGuard sąsajos. Paprastai pakanka 25 vertės, tačiau gali tekti šią vertę sumažinti, atsižvelgiant į jūsų aplinką.



B įrenginys

 

Leistini IP = 10.3.2.3/32

Tai yra įrenginio A IP arba IP diapazonas

PersistentKeepalive = 25

Administratoriaus atvejis – nuo ​​vieno iki daugelio mazgų

Šiame pavyzdyje parodyta situacija, kai įrenginys A gali susisiekti su įrenginiais nuo B iki D abiem kryptimis. Ši sąranka gali reikšti, kad inžinierius arba administratorius pasiekia daugybę išteklių (serverių, konteinerių ar mašinų) įvairiuose tinkluose.

 

[Architektūrinė schema]<<<<<<<<<<<<<<<<<<<<<<<<

 

Įsitikinkite, kad kiekvieno įrenginio nustatymuose nustatyti atitinkami nustatymai. Kurdami įrenginio konfigūraciją galite nurodyti įrenginio nustatymus (žr. Pridėti įrenginius). Jei reikia atnaujinti esamo įrenginio nustatymus, galima sukurti naują įrenginio konfigūraciją.

 

Įrenginys A (administratoriaus mazgas)

 

Leistini IP = 10.3.2.3/32, 10.3.2.4/32, 10.3.2.5/32 

    Tai yra įrenginių B–D IP. Įrenginių B–D IP adresai turi būti įtraukti į bet kurį pasirinktą IP diapazoną.

PersistentKeepalive = 25 

    Tai garantuoja, kad įrenginys gali išlaikyti tunelį ir toliau gauti paketus iš WireGuard sąsajos, net jei jis yra apsaugotas NAT. Daugeliu atvejų pakanka 25, tačiau, atsižvelgiant į jūsų aplinką, jums gali tekti sumažinti šį skaičių.

 

Prietaisas B.

 

  • AllowedIPs = 10.3.2.2/32: tai yra įrenginio A IP arba IP diapazonas
  • PersistentKeepalive = 25

Įrenginys C

 

  • AllowedIPs = 10.3.2.2/32: tai yra įrenginio A IP arba IP diapazonas
  • PersistentKeepalive = 25

Įrenginys D

 

  • AllowedIPs = 10.3.2.2/32: tai yra įrenginio A IP arba IP diapazonas
  • PersistentKeepalive = 25

NAT vartai

Norint pasiūlyti vieną statinį išėjimo IP visam jūsų komandos srautui, „Firezone“ gali būti naudojamas kaip NAT šliuzas. Šios situacijos yra susijusios su dažnu jo naudojimu:

 

Konsultacijos: paprašykite, kad jūsų klientas į baltąjį sąrašą įtrauktų vieną statinį IP adresą, o ne kiekvieno darbuotojo unikalų įrenginio IP adresą.

Tarpinio serverio naudojimas arba šaltinio IP maskavimas saugumo ar privatumo tikslais.

 

Šiame įraše bus parodytas paprastas pavyzdys, kaip apriboti prieigą prie savarankiškai priglobtos žiniatinklio programos iki vieno baltojo sąrašo statinio IP, kuriame veikia Firezone. Šioje iliustracijoje Firezone ir saugomas išteklius yra skirtingose ​​VPC srityse.

 

Šis sprendimas dažnai naudojamas vietoj daugelio galutinių vartotojų IP baltojo sąrašo tvarkymo, o tai gali užtrukti, nes prieigos sąrašas plečiasi.

AWS pavyzdys

Mūsų tikslas yra nustatyti Firezone serverį EC2 egzemplioriuje, kad būtų galima nukreipti VPN srautą į apribotus išteklius. Šiuo atveju „Firezone“ veikia kaip tinklo tarpinis serveris arba NAT šliuzas, kad kiekvienam prijungtam įrenginiui būtų suteiktas unikalus viešojo išėjimo IP.

 

1. Įdiekite Firezone serverį

Šiuo atveju EC2 egzempliorius, pavadintas tc2.micro, turi įdiegtą Firezone egzempliorių. Norėdami gauti informacijos apie „Firezone“ diegimą, eikite į diegimo vadovą. Kalbant apie AWS, įsitikinkite, kad:

 

Firezone EC2 egzemplioriaus saugos grupė leidžia išeinantį srautą į apsaugoto šaltinio IP adresą.

„Firezone“ egzempliorius turi elastingą IP. Srautas, kuris per Firezone egzempliorių nukreipiamas į išorines paskirties vietas, turės tai kaip šaltinio IP adresą. Aptariamas IP adresas yra 52.202.88.54.

 

[Įterpti ekrano kopiją]<<<<<<<<<<<<<<<<<<<<<<<<

 

2. Apribokite prieigą prie saugomo šaltinio

Savarankiškai priglobta žiniatinklio programa šiuo atveju yra apsaugotas šaltinis. Žiniatinklio programą galima pasiekti tik gavus užklausas iš IP adreso 52.202.88.54. Atsižvelgiant į išteklius, gali prireikti leisti įeinantį srautą įvairiuose prievaduose ir srauto tipuose. Tai nėra aprašyta šiame vadove.

 

[Įterpti ekrano kopiją]<<<<<<<<<<<<<<<<<<<<<<<<

 

Pasakykite trečiajai šaliai, atsakingai už apsaugotą šaltinį, kad turi būti leidžiamas srautas iš statinio IP, apibrėžto 1 veiksme (šiuo atveju 52.202.88.54).

 

3. Naudokite VPN serverį srautui nukreipti į apsaugotą šaltinį

 

Pagal numatytuosius nustatymus visas naudotojo srautas eis per VPN serverį ir bus gaunamas iš statinio IP, kuris buvo sukonfigūruotas atliekant 1 veiksmą (šiuo atveju 52.202.88.54). Tačiau, jei įjungtas padalintas tunelis, gali prireikti nustatymų, kad būtų užtikrinta, jog apsaugoto šaltinio paskirties IP yra įtrauktas į leidžiamus IP.

Čia pridėkite antraštės tekstą

Žemiau pateikiamas visas galimų konfigūravimo parinkčių sąrašas /etc/firezone/firezone.rb.



pasirinkimas

aprašymas

Numatytoji reikšmė

numatytasis['firezone']['external_url']

URL, naudojamas norint pasiekti šio „Firezone“ egzemplioriaus žiniatinklio portalą.

„https://#{mazgas['fqdn'] || mazgas [„hostname“]}“

numatytasis['firezone']['config_directory']

Aukščiausio lygio „Firezone“ konfigūravimo katalogas.

/etc/firezone'

numatytasis['firezone']['install_directory']

Aukščiausio lygio katalogas, kuriame reikia įdiegti „Firezone“.

/opt/firezone“

numatytasis['firezone']['app_directory']

Aukščiausio lygio katalogas, skirtas įdiegti „Firezone“ žiniatinklio programą.

„#{mazgas['firezone']['install_directory']}/embedded/service/firezone“

numatytasis['firezone']['log_directory']

Aukščiausio lygio „Firezone“ žurnalų katalogas.

/var/log/firezone'

numatytasis['firezone']['var_directory']

Aukščiausio lygio „Firezone“ vykdymo laiko failų katalogas.

/var/opt/firezone“

numatytasis['firezone']['vartotojas']

Neprivilegijuoto Linux vartotojo vardas, kuriam priklausys dauguma paslaugų ir failų.

firezone'

numatytasis['firezone']['group']

„Linux“ grupės pavadinimas priklausys daugumai paslaugų ir failų.

firezone'

numatytasis['firezone']['admin_email']

Pradinio Firezone vartotojo el. pašto adresas.

„firezone@localhost“

numatytasis['firezone']['max_devices_per_user']

Maksimalus įrenginių skaičius, kurį gali turėti vartotojas.

10

numatytasis['firezone']['allow_unprivileged_device_management']

Leidžia ne administratoriams naudotojams kurti ir ištrinti įrenginius.

TIKROJI

numatytasis['firezone']['allow_unprivileged_device_configuration']

Leidžia ne administratoriams naudotojams keisti įrenginio konfigūracijas. Kai išjungta, neprivilegijuotiems vartotojams neleidžiama keisti visų įrenginio laukų, išskyrus pavadinimą ir aprašymą.

TIKROJI

numatytasis['firezone']['egress_interface']

Sąsajos pavadinimas, iš kurio išeis tunelinis eismas. Jei nulis, bus naudojama numatytoji maršruto sąsaja.

nulis

numatytasis['firezone']['fips_enabled']

Įjungti arba išjungti OpenSSL FIP režimą.

nulis

numatytasis['firezone']['logging']['enabled']

Įgalinkite arba išjunkite registravimą Firezone. Jei norite visiškai išjungti registravimą, nustatykite į „false“.

TIKROJI

numatytasis['įmonė']['pavadinimas']

Chef „įmonės“ kulinarijos knygoje naudojamas pavadinimas.

firezone'

numatytasis['firezone']['install_path']

Įdiekite kelią, kurį naudoja šefo „įmonės“ kulinarijos knyga. Turėtų būti nustatytas toks pat, kaip ir aukščiau esantis diegimo_katalogas.

mazgas['firezone']['install_directory']

numatytasis['firezone']['sysvinit_id']

Identifikatorius, naudojamas /etc/inittab. Turi būti unikali 1–4 simbolių seka.

SUP'

numatytasis['firezone']['autentifikavimas']['vietinis']['įjungtas']

Įgalinkite arba išjunkite vietinį el. pašto / slaptažodžio autentifikavimą.

TIKROJI

numatytasis['firezone']['autentifikavimas']['auto_create_oidc_users']

Automatiškai sukurkite vartotojus, kurie pirmą kartą prisijungs prie OIDC. Išjungti, kad tik esami naudotojai galėtų prisijungti per OIDC.

TIKROJI

numatytasis['firezone']['autentifikavimas']['disable_vpn_on_oidc_error']

Išjunkite vartotojo VPN, jei bandant atnaujinti OIDC prieigos raktą aptinkama klaida.

FALSE

numatytasis['firezone']['autentifikavimas']['oidc']

„OpenID Connect“ konfigūracija, formatu {“provider” => [config…]} – žr. OpenIDConnect dokumentacija konfigūracijos pavyzdžiams.

{}

numatytasis['firezone']['nginx']['įjungta']

Įgalinkite arba išjunkite susietą nginx serverį.

TIKROJI

numatytasis['firezone']['nginx']['ssl_port']

HTTPS klausymo prievadas.

443

numatytasis['firezone']['nginx']['katalogas']

Katalogas, kuriame saugoma su „Firezone“ susijusi „nginx“ virtualaus pagrindinio kompiuterio konfigūracija.

„#{mazgas['firezone']['var_directory']}/nginx/etc

numatytasis['firezone']['nginx']['log_directory']

Katalogas, kuriame saugomi su Firezone susiję nginx žurnalo failai.

„#{mazgas['firezone']['log_directory']}/nginx“

numatytasis['firezone']['nginx']['log_rotation']['file_maxbytes']

Failo dydis, kuriuo galima pasukti Nginx žurnalo failus.

104857600

numatytasis['firezone']['nginx']['log_rotation']['num_to_keep']

„Firezone nginx“ žurnalo failų, kuriuos reikia išsaugoti prieš išmetant, skaičius.

10

numatytasis['firezone']['nginx']['log_x_forwarded_for']

Ar registruoti Firezone nginx x-forwarded-for antraštę.

TIKROJI

numatytasis['firezone']['nginx']['hsts_header']['enabled']

Įgalinti arba išjungti HSTS.

TIKROJI

numatytasis['firezone']['nginx']['hsts_header']['include_subdomains']

Įgalinti arba išjungti HSTS antraštės includeSubDomains.

TIKROJI

numatytasis['firezone']['nginx']['hsts_header']['max_age']

Maksimalus HSTS antraštės amžius.

31536000

numatytasis['firezone']['nginx']['redirect_to_canonical']

Ar peradresuoti URL į anksčiau nurodytą kanoninį FQDN

FALSE

numatytasis['firezone']['nginx']['cache']['enabled']

Įgalinkite arba išjunkite Firezone nginx talpyklą.

FALSE

numatytasis['firezone']['nginx']['talpykla']['katalogas']

„Firezone nginx“ talpyklos katalogas.

„#{mazgas['firezone']['var_directory']}/nginx/cache

numatytasis['firezone']['nginx']['vartotojas']

Firezone nginx vartotojas.

mazgas['firezone']['vartotojas']

numatytasis['firezone']['nginx']['grupė']

Firezone nginx grupė.

mazgas['ugnies zona']['grupė']

numatytasis ['firezone']['nginx']['katalogas']

Aukščiausio lygio nginx konfigūracijos katalogas.

mazgas['firezone']['nginx']['katalogas']

numatytasis['firezone']['nginx']['log_dir']

Aukščiausio lygio nginx žurnalų katalogas.

mazgas['firezone']['nginx']['log_directory']

numatytasis['firezone']['nginx']['pid']

Nginx pid failo vieta.

„#{mazgas['firezone']['nginx']['directory']}/nginx.pid“

numatytasis['firezone']['nginx']['daemon_disable']

Išjunkite nginx demono režimą, kad galėtume jį stebėti.

TIKROJI

numatytasis['firezone']['nginx']['gzip']

Įjunkite arba išjunkite nginx gzip glaudinimą.

ant

numatytasis['firezone']['nginx']['gzip_static']

Įjunkite arba išjunkite nginx gzip glaudinimą statiniams failams.

išjungti'

numatytasis['firezone']['nginx']['gzip_http_version']

HTTP versija, skirta aptarnauti statinius failus.

1.0 "

numatytasis['firezone']['nginx']['gzip_comp_level']

nginx gzip glaudinimo lygis.

2 "

numatytasis['firezone']['nginx']['gzip_proxyed']

Įgalinamas arba išjungiamas tarpinių užklausų atsakymų gzipavimas, atsižvelgiant į užklausą ir atsakymą.

bet koks'

numatytasis['firezone']['nginx']['gzip_vary']

Įgalinamas arba išjungiamas atsakymo antraštės „Vary: Accept-Encoding“ įterpimas.

išjungti'

numatytasis['firezone']['nginx']['gzip_buffers']

Nustato buferių, naudojamų atsakymui suspausti, skaičių ir dydį. Jei nulis, naudojamas nginx numatytasis.

nulis

numatytasis['firezone']['nginx']['gzip_types']

MIME tipai, įgalinti gzip glaudinimą.

['tekstas/paprastas', 'tekstas/css','application/x-javascript', 'text/xml', 'application/xml', 'application/rss+xml', 'application/atom+xml', " tekstas/javascript“, „application/javascript“, „application/json“]

numatytasis['firezone']['nginx']['gzip_min_length']

Minimalus failo ilgis, įgalinantis failo gzip glaudinimą.

1000

numatytasis['firezone']['nginx']['gzip_disable']

Vartotojo priemonės atitikmuo, skirtas išjungti gzip glaudinimą.

MSIE [1-6]\.'

numatytasis['firezone']['nginx']['keepalive']

Suaktyvina talpyklą, kad būtų galima prisijungti prie ankstesnių serverių.

ant

numatytasis['firezone']['nginx']['keepalive_timeout']

Laikotarpis, skirtas palaikyti ryšį su ankstesniais serveriais.

65

numatytasis['firezone']['nginx']['worker_processes']

Nginx darbuotojo procesų skaičius.

mazgas['cpu'] && mazgas['cpu']['viso'] ? mazgas ['cpu']['viso']: 1

numatytasis['firezone']['nginx']['worker_connections']

Maksimalus vienu metu veikiančių jungčių, kurias gali atidaryti darbuotojo procesas, skaičius.

1024

numatytasis['firezone']['nginx']['worker_rlimit_nofile']

Pakeičia maksimalaus atidarytų failų skaičiaus apribojimą darbuotojo procesams. Naudoja nginx numatytąjį, jei nulis.

nulis

numatytasis['firezone']['nginx']['multi_accept']

Ar darbuotojai turėtų priimti vieną ryšį vienu metu, ar kelis.

TIKROJI

numatytasis['firezone']['nginx']['įvykis']

Nurodomas ryšio apdorojimo metodas, naudojamas nginx įvykių kontekste.

epoll'

numatytasis['firezone']['nginx']['server_tokens']

Įgalina arba išjungia nginx versijos siuntimą klaidų puslapiuose ir atsakymo antraštės lauke „Serveris“.

nulis

numatytasis['firezone']['nginx']['server_names_hash_bucket_size']

Nustato serverio pavadinimų maišos lentelių segmento dydį.

64

numatytasis ['firezone']['nginx']['sendfile']

Įjungia arba išjungia nginx sendfile() naudojimą.

ant

numatytasis['firezone']['nginx']['access_log_options']

Nustato nginx prieigos žurnalo parinktis.

nulis

numatytasis['firezone']['nginx']['error_log_options']

Nustato nginx klaidų žurnalo parinktis.

nulis

numatytasis['firezone']['nginx']['disable_access_log']

Išjungiamas nginx prieigos žurnalas.

FALSE

numatytasis['firezone']['nginx']['types_hash_max_size']

nginx tipų maišos maksimalus dydis.

2048

numatytasis['firezone']['nginx']['types_hash_bucket_size']

nginx tipų maišos kibiro dydis.

64

numatytasis['firezone']['nginx']['proxy_read_timeout']

nginx tarpinio serverio skaitymo skirtasis laikas. Jei norite naudoti numatytąjį „nginx“, nustatykite į nulį.

nulis

numatytasis['firezone']['nginx']['client_body_buffer_size']

nginx kliento kūno buferio dydis. Jei norite naudoti numatytąjį „nginx“, nustatykite į nulį.

nulis

numatytasis['firezone']['nginx']['client_max_body_size']

nginx kliento maksimalus kūno dydis.

250 m “

numatytasis['firezone']['nginx']['numatytasis']['moduliai']

Nurodykite papildomus nginx modulius.

[]

numatytasis['firezone']['nginx']['enable_rate_limiting']

Įjungti arba išjungti nginx greičio apribojimą.

TIKROJI

numatytasis['firezone']['nginx']['rate_limiting_zone_name']

Nginx greičio ribojimo zonos pavadinimas.

firezone'

numatytasis['firezone']['nginx']['rate_limiting_backoff']

Nginx greičio ribojimo atsitraukimas.

10 m “

numatytasis['firezone']['nginx']['rate_limit']

Nginx greičio riba.

10r/s

numatytasis ['firezone']['nginx']['ipv6']

Leiskite nginx klausytis ne tik IPv6, bet ir IPv4 HTTP užklausų.

TIKROJI

numatytasis['firezone']['postgresql']['enabled']

Įjungti arba išjungti susietą Postgresql. Nustatykite į false ir užpildykite toliau pateiktas duomenų bazės parinktis, kad galėtumėte naudoti savo Postgresql egzempliorių.

TIKROJI

numatytasis['firezone']['postgresql']['naudotojo vardas']

„Postgresql“ vartotojo vardas.

mazgas['firezone']['vartotojas']

numatytasis['firezone']['postgresql']['data_directory']

Postgresql duomenų katalogas.

„#{mazgas['firezone']['var_directory']}/postgresql/13.3/data“

numatytasis['firezone']['postgresql']['log_directory']

Postgresql žurnalo katalogas.

„#{mazgas['firezone']['log_directory']}/postgresql“

numatytasis['firezone']['postgresql']['log_rotation']['file_maxbytes']

Maksimalus Postgresql žurnalo failo dydis prieš jį pasukant.

104857600

numatytasis['firezone']['postgresql']['log_rotation']['num_to_keep']

Saugotinų Postgresql žurnalo failų skaičius.

10

numatytasis['firezone']['postgresql']['checkpoint_completion_target']

Postgresql kontrolinio taško užbaigimo tikslas.

0.5

numatytasis['firezone']['postgresql']['checkpoint_segments']

Postgresql kontrolinių taškų segmentų skaičius.

3

numatytasis['firezone']['postgresql']['checkpoint_timeout']

Postgresql patikros taško skirtasis laikas.

5 min.

numatytasis['firezone']['postgresql']['checkpoint_warning']

Postgresql patikros taško įspėjimo laikas sekundėmis.

30-ųjų

numatytasis['firezone']['postgresql']['effective_cache_size']

Postgresql efektyvus talpyklos dydis.

128 MB'

numatytasis['firezone']['postgresql']['klausymo_adresas']

Postgresql klausymo adresas.

127.0.0.1 "

numatytasis['firezone']['postgresql']['max_connections']

Postgresql max jungtys.

350

numatytasis['firezone']['postgresql']['md5_auth_cidr_addresses']

Postgresql CIDR, kad būtų galima naudoti md5 autentifikavimą.

['127.0.0.1/32', '::1/128']

numatytasis['firezone']['postgresql']['port']

Postgresql klausymo prievadas.

15432

numatytasis['firezone']['postgresql']['shared_buffers']

Postgresql bendrinamų buferių dydis.

"#{(mazgas['atmintis']['viso'].to_i / 4) / 1024}MB"

numatytasis['firezone']['postgresql']['shmmax']

Postgresql shmmax baitais.

17179869184

numatytasis['firezone']['postgresql']['shmal']

Postgresql shmall baitais.

4194304

numatytasis['firezone']['postgresql']['work_mem']

Postgresql darbinės atminties dydis.

8 MB'

numatytasis['firezone']['duomenų bazė']['vartotojas']

Nurodo vartotojo vardą, kurį Firezone naudos prisijungdama prie DB.

mazgas['firezone']['postgresql']['naudotojo vardas']

numatytasis['firezone']['duomenų bazė']['slaptažodis']

Jei naudojate išorinę DB, nurodo slaptažodį, kurį Firezone naudos prisijungdama prie DB.

Pakeisk mane'

numatytasis['firezone']['duomenų bazė']['vardas']

Duomenų bazė, kurią naudos „Firezone“. Bus sukurtas, jei jo nėra.

firezone'

numatytasis['firezone']['duomenų bazė']['host']

Duomenų bazės priegloba, prie kurios prisijungs Firezone.

mazgas['firezone']['postgresql']['klausymo_adresas']

numatytasis['firezone']['duomenų bazė']['portas']

Duomenų bazės prievadas, prie kurio prisijungs Firezone.

mazgas['firezone']['postgresql']['port']

numatytasis['firezone']['duomenų bazė']['puldas']

„Firezone“ naudos duomenų bazės baseino dydį.

[10, etc.nprocessors].maks

numatytasis['firezone']['duomenų bazė']['ssl']

Ar prisijungti prie duomenų bazės per SSL.

FALSE

numatytasis['firezone']['duomenų bazė']['ssl_opts']

Parinkčių maiša, kurią reikia siųsti į :ssl_opts parinktį jungiantis per SSL. Matyti Ecto.Adapters.Postgres dokumentacija.

{}

numatytasis['firezone']['duomenų bazė']['parameters']

Parametrų maiša, kurią reikia siųsti į :parameters parinktį jungiantis prie duomenų bazės. Matyti Ecto.Adapters.Postgres dokumentacija.

{}

numatytasis['firezone']['duomenų bazė']['plėtiniai']

Duomenų bazės plėtiniai, kuriuos reikia įjungti.

{ 'plpgsql' => tiesa, 'pg_trgm' => tiesa }

numatytasis['firezone']['feniksas']['įjungtas']

Įgalinkite arba išjunkite „Firezone“ žiniatinklio programą.

TIKROJI

numatytasis['firezone']['feniksas']['klausymo_adresas']

„Firezone“ žiniatinklio programos klausymo adresas. Tai bus klausymosi adresas, kurį nginx naudoja tarpiniais serveriais.

127.0.0.1 "

numatytasis['firezone']['feniksas']['portas']

„Firezone“ žiniatinklio programos klausymo prievadas. Tai bus nginx tarpinis serveris prieš srovę.

13000

numatytasis ['firezone']['phoenix']['log_directory']

„Firezone“ žiniatinklio programų žurnalo katalogas.

„#{mazgas['firezone']['log_directory']}/phoenix“

numatytasis['firezone']['feniksas']['log_rotation']['file_maxbytes']

„Firezone“ žiniatinklio programos žurnalo failo dydis.

104857600

numatytasis['firezone']['feniksas']['log_rotation']['num_to_keep']

Saugomų „Firezone“ žiniatinklio programų žurnalo failų skaičius.

10

numatytasis['firezone']['feniksas']['crash_detection']['enabled']

Įgalinkite arba išjunkite „Firezone“ žiniatinklio programos išjungimą, kai aptinkama gedimas.

TIKROJI

numatytasis['firezone']['feniksas']['external_trusted_proxy']

Patikimų atvirkštinių tarpinių serverių sąrašas, suformatuotas kaip IP ir (arba) CIDR masyvas.

[]

numatytasis['firezone']['feniksas']['privatūs_klientai']

Privataus tinklo HTTP klientų sąrašas, suformatuotas kaip IP ir (arba) CIDR masyvas.

[]

numatytasis['firezone']['wireguard']['enabled']

Įgalinkite arba išjunkite susietą „WireGuard“ valdymą.

TIKROJI

numatytasis['firezone']['wireguard']['log_directory']

Žurnalų katalogas, skirtas „WireGuard“ valdymui.

„#{mazgas['firezone']['log_directory']}/wireguard“

numatytasis['firezone']['wireguard']['log_rotation']['file_maxbytes']

WireGuard žurnalo failo maksimalus dydis.

104857600

numatytasis['firezone']['wireguard']['log_rotation']['num_to_keep']

Saugomų „WireGuard“ žurnalo failų skaičius.

10

numatytasis['firezone']['wireguard']['interface_name']

„WireGuard“ sąsajos pavadinimas. Pakeitus šį parametrą gali laikinai nutrūkti VPN ryšys.

wg-firezone'

numatytasis['firezone']['wireguard']['port']

„WireGuard“ klausymo prievadas.

51820

numatytasis['firezone']['wireguard']['mtu']

WireGuard sąsaja MTU šiam serveriui ir įrenginių konfigūracijoms.

1280

numatytasis['firezone']['wireguard']['endpoint']

„WireGuard“ galutinis taškas, skirtas įrenginio konfigūracijoms generuoti. Jei nulis, numatytasis serverio viešasis IP adresas.

nulis

numatytasis['firezone']['wireguard']['dns']

„WireGuard“ DNS, skirtas naudoti sugeneruotoms įrenginio konfigūracijoms.

1.1.1.1, 1.0.0.1′

numatytasis['firezone']['wireguard']['allowed_ips']

„WireGuard AllowedIP“, kuriuos galima naudoti sugeneruotoms įrenginio konfigūracijoms.

0.0.0.0/0, ::/0′

numatytasis['firezone']['wireguard']['persistent_keepalive']

Numatytasis PersistentKeepalive nustatymas sugeneruotoms įrenginio konfigūracijoms. 0 reikšmė išjungiama.

0

numatytasis['firezone']['wireguard']['ipv4']['įjungtas']

Įjungti arba išjungti „WireGuard“ tinklo IPv4.

TIKROJI

numatytasis['firezone']['wireguard']['ipv4']['masquerade']

Įgalinkite arba išjunkite paketų, išeinančių iš IPv4 tunelio, maskavimą.

TIKROJI

numatytasis['firezone']['wireguard']['ipv4']['tinklas']

WireGuard tinklo IPv4 adresų telkinys.

10.3.2.0 / 24 ′

numatytasis['firezone']['wireguard']['ipv4']['adresas']

WireGuard sąsajos IPv4 adresas. Turi būti „WireGuard“ adresų telkinyje.

10.3.2.1 "

numatytasis['firezone']['wireguard']['ipv6']['įjungtas']

Įjungti arba išjungti „WireGuard“ tinklo IPv6.

TIKROJI

numatytasis['firezone']['wireguard']['ipv6']['masquerade']

Įgalinkite arba išjunkite paketų, išeinančių iš IPv6 tunelio, maskavimą.

TIKROJI

numatytasis['firezone']['wireguard']['ipv6']['tinklas']

WireGuard tinklo IPv6 adresų telkinys.

fd00::3:2:0/120′

numatytasis['firezone']['wireguard']['ipv6']['adresas']

WireGuard sąsajos IPv6 adresas. Turi būti IPv6 adresų telkinyje.

fd00::3:2:1′

numatytasis['firezone']['runit']['svlogd_bin']

Vykdyti svlogd bin vietą.

„#{mazgas['firezone']['install_directory']}/embedded/bin/svlogd“

numatytasis['firezone']['ssl']['katalogas']

SSL katalogas, skirtas sugeneruotiems sertifikatams saugoti.

/var/opt/firezone/ssl'

numatytasis['firezone']['ssl']['email_address']

El. pašto adresas, skirtas naudoti savarankiškai pasirašytiems sertifikatams ir ACME protokolo atnaujinimo pranešimams.

tu@example.com'

numatytasis['firezone']['ssl']['acme']['enabled']

Įgalinti ACME automatiniam SSL sertifikato sudarymui. Išjunkite tai, kad „Nginx“ neklausytų per 80 prievadą. Žr čia daugiau instrukcijų.

FALSE

numatytasis['firezone']['ssl']['acme']['serveris']

ACME serveris, naudojamas sertifikatui išduoti / atnaujinti. Gali būti bet koks galiojantis acme.sh serveris

leidžiašifruoti

numatytasis['firezone']['ssl']['acme']['keylength']

Nurodykite SSL sertifikatų rakto tipą ir ilgį. Matyti čia

Ec-256

numatytasis['firezone']['ssl']['certificate']

Kelias į jūsų FQDN sertifikato failą. Jei nurodyta, nepaiso ACME nustatymo. Jei ir ACME, ir šis yra nulis, bus sugeneruotas savarankiškai pasirašytas sertifikatas.

nulis

numatytasis['firezone']['ssl']['certificate_key']

Kelias į sertifikato failą.

nulis

numatytasis['firezone']['ssl']['ssl_dhparam']

nginx ssl dh_param.

nulis

numatytasis['firezone']['ssl']['country_name']

Savarankiškai pasirašyto sertifikato šalies pavadinimas.

JAV

numatytasis['firezone']['ssl']['state_name']

Valstybinis savarankiškai pasirašyto sertifikato pavadinimas.

CA “

numatytasis['firezone']['ssl']['locality_name']

Savarankiškai pasirašyto sertifikato vietovės pavadinimas.

San Franciskas'

numatytasis['firezone']['ssl']['company_name']

Įmonės pavadinimo savarankiškai pasirašytas sertifikatas.

Mano kompanija'

numatytasis['firezone']['ssl']['organizacijos_vieneto_pavadinimas']

Savarankiškai pasirašyto sertifikato organizacinio vieneto pavadinimas.

operacijos“

numatytasis['firezone']['ssl']['šifrai']

SSL šifrai, skirti naudoti „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’

numatytasis['firezone']['ssl']['fips_ciphers']

SSL šifrai FIP režimui.

FIPS@STRENGTH:!aNULL:!eNULL'

numatytasis['firezone']['ssl']['protocols']

Naudoti TLS protokolai.

TLSv1 TLSv1.1 TLSv1.2′

numatytasis['firezone']['ssl']['session_cache']

SSL seanso talpykla.

bendrinamas:SSL:4m'

numatytasis['firezone']['ssl']['session_timeout']

SSL seanso skirtasis laikas.

5 m “

numatytasis['firezone']['robots_allow']

nginx robotai leidžia.

/ '

numatytasis['firezone']['robots_disallow']

nginx robotai neleidžia.

nulis

numatytasis['firezone']['outbound_email']['from']

Siunčiamas el. laiškas iš adreso.

nulis

numatytasis['firezone']['outbound_email']['provider']

Siunčiamo el. pašto paslaugų teikėjas.

nulis

numatytasis['firezone']['outbound_email']['configs']

Siunčiamo el. pašto teikėjo konfigūracijos.

žr. omnibus/cookbooks/firezone/attributes/default.rb

numatytasis['firezone']['telemetrija']['įjungta']

Įgalinti arba išjungti anoniminę produkto telemetriją.

TIKROJI

numatytasis['firezone']['connectivity_checks']['enabled']

Įgalinkite arba išjunkite „Firezone“ ryšio tikrinimo paslaugą.

TIKROJI

numatytasis['firezone']['connectivity_checks']['interval']

Intervalas tarp ryšio patikrinimų sekundėmis.

3_600



________________________________________________________________

 

Failų ir katalogų vietos

 

Čia rasite failų ir katalogų, susijusių su įprastu Firezone diegimu, sąrašą. Jie gali keistis priklausomai nuo konfigūracijos failo pakeitimų.



kelias

aprašymas

/var/opt/firezone

Aukščiausio lygio katalogas su duomenimis ir sugeneruota konfigūracija Firezone susietoms paslaugoms.

/opt/firezone

Aukščiausio lygio katalogas, kuriame yra sukurtos bibliotekos, dvejetainiai failai ir vykdymo failai, reikalingi Firezone.

/usr/bin/firezone-ctl

„Firezone-ctl“ programa, skirta „Firezone“ diegimui valdyti.

/etc/systemd/system/firezone-runsvdir-start.service

systemd unit failą, skirtą Firezone runsvdir priežiūros procesui paleisti.

/etc/firezone

Firezone konfigūracijos failai.



__________________________________________________________

 

Ugniasienės šablonai

 

Šis puslapis dokumentuose buvo tuščias

 

_____________________________________________________________

 

Nftables ugniasienės šablonas

 

Šis nftables ugniasienės šablonas gali būti naudojamas apsaugoti serverį, kuriame veikia Firezone. Šablonas daro tam tikras prielaidas; jums gali tekti pakoreguoti taisykles, kad jos atitiktų jūsų naudojimo atvejį:

  • „WireGuard“ sąsaja pavadinta wg-firezone. Jei tai neteisinga, pakeiskite DEV_WIREGUARD kintamąjį, kad jis atitiktų numatytąją ['firezone']['wireguard']['interface_name'] konfigūracijos parinktį.
  • Prievadas, kurio WireGuard klauso, yra 51820. Jei nenaudojate numatytojo prievado, pakeiskite WIREGUARD_PORT kintamąjį.
  • Į serverį bus leidžiamas tik šis gaunamas srautas:
    • SSH (22 TCP prievadas)
    • HTTP (80 TCP prievadas)
    • HTTPS (443 TCP prievadas)
    • „WireGuard“ (UDP prievadas WIREGUARD_PORT)
    • UDP traceroute (UDP prievadas 33434-33524, greitis ribojamas iki 500 per sekundę)
    • ICMP ir ICMPv6 (ping / ping atsakymų dažnis ribojamas iki 2000 per sekundę)
  • Iš serverio bus leidžiamas tik šis išeinantis srautas:
    • DNS (UDP ir TCP prievadas 53)
    • HTTP (80 TCP prievadas)
    • NTP (UDP 123 prievadas)
    • HTTPS (443 TCP prievadas)
    • SMTP pateikimas (587 TCP prievadas)
    • UDP traceroute (UDP prievadas 33434-33524, greitis ribojamas iki 500 per sekundę)
  • Bus registruojamas neprilygstamas srautas. Registravimui naudojamos taisyklės yra atskirtos nuo eismo mažinimo taisyklių ir yra ribojamos. Atitinkamų registravimo taisyklių pašalinimas neturės įtakos eismui.

„Firezone“ valdomos taisyklės

„Firezone“ sukonfigūruoja savo „nftables“ taisykles, kad leistų / atmestų srautą į žiniatinklio sąsajoje sukonfigūruotas paskirties vietas ir tvarkytų išeinantį NAT kliento srautui.

Pritaikius toliau pateiktą ugniasienės šabloną jau veikiančiame serveryje (ne įkrovos metu), Firezone taisyklės bus išvalytos. Tai gali turėti pasekmių saugumui.

Norėdami išspręsti šią problemą, iš naujo paleiskite „Phoenix“ paslaugą:

firezone-ctl iš naujo paleiskite phoenix

Bazinis ugniasienės šablonas

#!/usr/sbin/nft -f

 

## Išvalykite / išvalykite visas esamas taisykles

praplovimo taisyklių rinkinys

 

############################### KINTAMAI ################## ###############

## Interneto/WAN sąsajos pavadinimas

apibrėžkite DEV_WAN = eth0

 

## WireGuard sąsajos pavadinimas

apibrėžkite DEV_WIREGUARD = wg-firezone

 

## WireGuard klausymosi prievadas

apibrėžti WIREGUARD_PORT = 51820

############################# KINTAMŲJŲ PABAIGA ################## ############

 

# Pagrindinė inet šeimos filtravimo lentelė

lentelės inet filtras {

 

 # Peradresuojamo srauto taisyklės

 # Ši grandinė apdorojama prieš Firezone pirminę grandinę

 grandinė pirmyn {

   tipo filtro pirmenybės pirmenybės filtras – 5; priimti politiką

 }

 

 # Įvesties srauto taisyklės

 grandinės įvestis {

   tipo filtras kabliukas įvesties prioriteto filtras; politikos kritimas

 

   ## Leisti įeinantį srautą atgalinio ryšio sąsajai

   jei ne \

     priimti \

     komentuoti „Leisti visą srautą iš kilpos sąsajos“

 

   ## Leisti užmegztus ir susijusius ryšius

   ct būsena nustatyta, susijusi \

     priimti \

     komentuoti „Leisti užmegztus / susijusius ryšius“

 

   ## Leisti įeinantį WireGuard srautą

   iif $DEV_WAN udp dport $WIREGUARD_PORT \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinantį WireGuard srautą“

 

   ## Užregistruokite ir išmeskite naujus TCP ne SYN paketus

   tcp vėliavėlės != sin ct būsena nauja \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalo priešdėlis „IN – Naujas !SYN:“ \

     komentuoti „Darbo limito registravimas naujiems ryšiams, kuriems nenustatyta SYN TCP vėliavėlė“

   tcp vėliavėlės != sin ct būsena nauja \

     skaitiklis \

     lašas \

     komentuoti „Nutraukti naujus ryšius, kuriuose nenustatyta SYN TCP vėliavėlė“

 

   ## Užregistruokite ir išmeskite TCP paketus su netinkama fin/syn vėliava

   tcp vėliavėlės & (fin|syn) == (fin|syn) \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalo priešdėlis „IN – TCP FIN | SIN:“ \

     komentuoti „Darbo limito registravimas TCP paketams su netinkama fin/syn vėliava nustatyta“

   tcp vėliavėlės & (fin|syn) == (fin|syn) \

     skaitiklis \

     lašas \

     komentuoti „Išmesti TCP paketus su netinkama fin/syn vėliava“

 

   ## Užregistruokite ir išmeskite TCP paketus su netinkama sin/pirmoji vėliavėlė

   tcp vėliavėlės & (syn|rst) == (syn|rst) \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalo priešdėlis „IN – TCP SYN|RST:“ \

     komentuoti „Darbo limito registravimas TCP paketams su netinkama sin/pirmoji vėliavėlė“

   tcp vėliavėlės & (syn|rst) == (syn|rst) \

     skaitiklis \

     lašas \

     komentuoti „Išmesti TCP paketus su netinkama sinchronizavimo/pirmoji vėliavėlė“

 

   ## Užregistruokite ir išmeskite netinkamas TCP vėliavėles

   tcp vėliavėlės & (fin|syn|rst|psh|ack|urg) < (fin) \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalo priešdėlis „IN – FIN:“ \

     komentuoti „Neteisingų TCP žymų greičio limito registravimas (fin|syn|rst|psh|ack|urg) < (fin)“

   tcp vėliavėlės & (fin|syn|rst|psh|ack|urg) < (fin) \

     skaitiklis \

     lašas \

     komentuoti „Išmesti TCP paketus su vėliavėlėmis (fin|syn|rst|psh|ack|urg) < (fin)“

 

   ## Užregistruokite ir išmeskite netinkamas TCP vėliavėles

   tcp vėliavėlės & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalo priešdėlis „IN – FIN | PSH | URG:“ \

     komentuoti „Neteisingų TCP žymų greičio limito registravimas (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)“

   tcp vėliavėlės & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \

     skaitiklis \

     lašas \

     komentuoti "Nuleiskite TCP paketus su vėliavėlėmis (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)"

 

   ## Sumažinkite srautą esant netinkamai ryšio būsenai

   ct būsena neteisinga \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalas žymi visus priešdėlius „IN – Invalid:“ \

     komentuoti „Įkainių limito registravimas srautui esant netinkamai ryšio būsenai“

   ct būsena neteisinga \

     skaitiklis \

     lašas \

     komentuoti „Sumažinkite srautą esant netinkamai ryšio būsenai“

 

   ## Leisti IPv4 ping / ping atsakymus, bet greičio apribojimas iki 2000 PPS

   ip protokolas icmp icmp tipas { echo-reply, echo-request } \

     ribinė norma 2000/sekundė \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinantį IPv4 aidą (ping) apribotą iki 2000 PPS“

 

   ## Leisti visus kitus gaunamus IPv4 ICMP

   ip protokolas icmp \

     skaitiklis \

     priimti \

     komentuoti „Leisti visus kitus IPv4 ICMP“

 

   ## Leisti IPv6 ping / ping atsakymus, bet greičio apribojimas iki 2000 PPS

   icmpv6 tipas { echo-reply, echo-request } \

     ribinė norma 2000/sekundė \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinantį IPv6 aidą (ping) apribotą iki 2000 PPS“

 

   ## Leisti visus kitus gaunamus IPv6 ICMP

   meta l4proto { icmpv6 } \

     skaitiklis \

     priimti \

     komentuoti „Leisti visus kitus IPv6 ICMP“

 

   ## Leisti įeinančius traceroute UDP prievadus, bet apriboti iki 500 PPS

   udp dport 33434-33524 \

     ribinė norma 500/sekundė \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinantį UDP traceroute iki 500 PPS“

 

   ## Leisti įeinantį SSH

   tcp dport sSH ct būsena nauja \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinančius SSH ryšius“

 

   ## Leisti įeinantį HTTP ir HTTPS

   tcp dport { http, https } ct būsena naujas \

     skaitiklis \

     priimti \

     komentuoti „Leisti įeinančius HTTP ir HTTPS ryšius“

 

   ## Užregistruokite bet kokį neprilygstamą srautą, tačiau registravimo greitis ribojamas iki 60 pranešimų per minutę

   ## Numatytoji politika bus taikoma nesuderinamam srautui

   ribinė norma 60/min. sprogimas 100 paketai \

     žurnalo priešdėlis „IN – Drop:“ \

     komentuoti „Registruoti neprilygstamą srautą“

 

   ## Suskaičiuokite neprilygstamą srautą

   skaitiklis \

     komentuoti „Suskaičiuokite bet kokį neprilygstamą srautą“

 }

 

 # Išvesties srauto taisyklės

 grandinės išvestis {

   tipo filtro kablio išvesties prioriteto filtras; politikos kritimas

 

   ## Leisti išeinantį srautą atgalinio ryšio sąsajai

   oi, \

     priimti \

     komentuoti „Leisti visą srautą į atgalinio ryšio sąsają“

 

   ## Leisti užmegztus ir susijusius ryšius

   ct būsena nustatyta, susijusi \

     skaitiklis \

     priimti \

     komentuoti „Leisti užmegztus / susijusius ryšius“

 

   ## Prieš nutraukdami blogos būklės ryšius, leiskite išeinantį WireGuard srautą

   oif $DEV_WAN udp sportas $WIREGUARD_PORT \

     skaitiklis \

     priimti \

     komentuoti „Leisti WireGuard išeinantį srautą“

 

   ## Sumažinkite srautą esant netinkamai ryšio būsenai

   ct būsena neteisinga \

     ribinė norma 100/min. sprogimas 150 paketai \

     žurnalas žymi visus priešdėlius „OUT – Invalid:“ \

     komentuoti „Įkainių limito registravimas srautui esant netinkamai ryšio būsenai“

   ct būsena neteisinga \

     skaitiklis \

     lašas \

     komentuoti „Sumažinkite srautą esant netinkamai ryšio būsenai“

 

   ## Leisti visus kitus siunčiamus IPv4 ICMP

   ip protokolas icmp \

     skaitiklis \

     priimti \

     komentuoti „Leisti visus IPv4 ICMP tipus“

 

   ## Leisti visus kitus siunčiamus IPv6 ICMP

   meta l4proto { icmpv6 } \

     skaitiklis \

     priimti \

     komentuoti „Leisti visus IPv6 ICMP tipus“

 

   ## Leisti išeinančius traceroute UDP prievadus, bet apriboti iki 500 PPS

   udp dport 33434-33524 \

     ribinė norma 500/sekundė \

     skaitiklis \

     priimti \

     komentuoti „Leisti siunčiamą UDP traceroute, apribotą iki 500 PPS“

 

   ## Leisti išeinančius HTTP ir HTTPS ryšius

   tcp dport { http, https } ct būsena naujas \

     skaitiklis \

     priimti \

     komentuoti „Leisti išeinančius HTTP ir HTTPS ryšius“

 

   ## Leisti siųsti SMTP siuntimą

   tcp dport pateikimo ct būsena nauja \

     skaitiklis \

     priimti \

     komentuoti „Leisti siunčiamą SMTP pateikimą“

 

   ## Leisti siunčiamas DNS užklausas

   udp dport 53 \

     skaitiklis \

     priimti \

     komentuoti „Leisti siunčiamas UDP DNS užklausas“

   tcp dport 53 \

     skaitiklis \

     priimti \

     komentuoti „Leisti siunčiamas TCP DNS užklausas“

 

   ## Leisti siunčiamas NTP užklausas

   udp dport 123 \

     skaitiklis \

     priimti \

     komentuoti „Leisti siunčiamas NTP užklausas“

 

   ## Užregistruokite bet kokį neprilygstamą srautą, tačiau registravimo greitis ribojamas iki 60 pranešimų per minutę

   ## Numatytoji politika bus taikoma nesuderinamam srautui

   ribinė norma 60/min. sprogimas 100 paketai \

     žurnalo priešdėlis „OUT – Drop:“ \

     komentuoti „Registruoti neprilygstamą srautą“

 

   ## Suskaičiuokite neprilygstamą srautą

   skaitiklis \

     komentuoti „Suskaičiuokite bet kokį neprilygstamą srautą“

 }

 

}

 

# Pagrindinė NAT filtravimo lentelė

lentelė inet nat {

 

 # NAT srauto išankstinio maršruto nustatymo taisyklės

 grandinės išankstinis maršrutas {

   tipo nat hook prerouting priority dstnat; priimti politiką

 }

 

 # NAT eismo po maršruto nustatymo taisyklės

 # Ši lentelė apdorojama prieš „Firezone“ maršruto parinkimo grandinę

 grandinės postrouting {

   tipo nat hook postrouting priority srcnat – 5; priimti politiką

 }

 

}

Naudojimas

Užkarda turėtų būti saugoma atitinkamoje veikiančio Linux platinimo vietoje. Debian/Ubuntu atveju tai yra /etc/nftables.conf, o RHEL – /etc/sysconfig/nftables.conf.

nftables.service turės būti sukonfigūruotas, kad būtų paleistas įkrovos metu (jei dar nėra):

systemctl įgalinti nftables.service

Jei atliekate kokius nors ugniasienės šablono pakeitimus, sintaksė gali būti patvirtinta vykdant patikros komandą:

nft -f /kelias/į/nftables.conf -c

Būtinai patikrinkite, ar ugniasienė veikia taip, kaip tikėtasi, nes tam tikros nftables funkcijos gali būti neprieinamos, atsižvelgiant į serveryje veikiantį leidimą.



_______________________________________________________________



Telemetrija

 

Šiame dokumente pateikiama telemetrijos, kurią „Firezone“ renka iš jūsų savarankiškai priglobto egzemplioriaus, apžvalga ir kaip ją išjungti.

Kodėl „Firezone“ renka telemetriją

„Firezone“ remiasi telemetrija, kad suteiktume prioritetą savo planui ir optimizuotume inžinerinius išteklius, kuriuos turime, kad Firezone būtų geresnė visiems.

Mūsų renkama telemetrija skirta atsakyti į šiuos klausimus:

  • Kiek žmonių įdiegia, naudoja ir nustoja naudoti „Firezone“?
  • Kokios funkcijos yra vertingiausios, o kurios nemato jokios naudos?
  • Kurias funkcijas reikia labiausiai patobulinti?
  • Kai kas nors sugenda, kodėl sugedo ir kaip galime užkirsti kelią tam, kad taip nutiktų ateityje?

Kaip mes renkame telemetriją

Firezone yra trys pagrindinės vietos, kur renkama telemetrija:

  1. Paketo telemetrija. Apima tokius įvykius kaip diegimas, pašalinimas ir atnaujinimas.
  2. CLI telemetrija iš firezone-ctl komandų.
  3. Produkto telemetrija, susieta su žiniatinklio portalu.

Kiekviename iš šių trijų kontekstų fiksuojame mažiausią duomenų kiekį, reikalingą atsakyti į aukščiau pateiktus klausimus.

Administratoriaus el. laiškai renkami tik tuo atveju, jei aiškiai pasirenkate produkto naujinius. Kitu atveju asmenį identifikuojanti informacija yra niekada surinkta.

„Firezone“ saugo telemetriją savarankiškai priglobtame „PostHog“ egzemplioriuje, veikiančiame privačiame „Kubernetes“ klasteryje, kurį gali pasiekti tik „Firezone“ komanda. Štai pavyzdys telemetrijos įvykio, kuris siunčiamas iš jūsų Firezone egzemplioriaus į mūsų telemetrijos serverį:

{

   "id": “0182272d-0b88-0000-d419-7b9a413713f1”,

   "laiko žyma": “2022-07-22T18:30:39.748000+00:00”,

   "įvykis": „fz_http_started“,

   „skirtasis_id“: “1ec2e794-1c3e-43fc-a78f-1db6d1a37f54”,

   "ypatybės": {

       „$geoip_city_name“: "Ashburn",

       „$geoip_continent_code“: "NA",

       „$geoip_continent_name“: "Šiaurės Amerika",

       „$geoip_country_code“: „JAV“,

       „$geoip_country_name“: "Jungtinės Valstijos",

       „$geoip_platitude“: 39.0469,

       „$geoip_ilguma“: -77.4903,

       „$geoip_postal_code“: "20149",

       „$geoip_subdivision_1_code“: "VA",

       „$geoip_subdivision_1_name“: "Virdžinija",

       „$geoip_time_zone“: „Amerika/Niujorkas“,

       „$ip“: "52.200.241.107",

       „$plugins_deferred“: [],

       „$plugins_failed“: [],

       „$plugins_succeeded“: [

           „GeoIP (3)“

       ],

       „skirtasis_id“: “1zc2e794-1c3e-43fc-a78f-1db6d1a37f54”,

       „fqdn“: „awsdemo.firezone.dev“,

       „kernel_version“: „Linux 5.13.0“,

       "versija": "0.4.6"

   },

   „elementų_grandinė“: "

}

Kaip išjungti telemetriją

PASTABA

Firezone kūrėjų komanda remiasi produktų analizės, kad „Firezone“ būtų geresnė visiems. Telemetrijos palikimas įjungtas yra vienintelis vertingiausias indėlis į „Firezone“ plėtrą. Tačiau suprantame, kad kai kuriems naudotojams taikomi aukštesni privatumo ar saugumo reikalavimai, todėl norėtų visiškai išjungti telemetriją. Jei tai tu, skaityk toliau.

Telemetrija įjungta pagal numatytuosius nustatymus. Norėdami visiškai išjungti gaminio telemetriją, nurodykite šią konfigūracijos parinktį į false /etc/firezone/firezone.rb ir paleiskite sudo firezone-ctl reconfigure, kad būtų priimti pakeitimai.

numatytas['ugnies zona']["telemetrija"]['įjungtas'🇧🇷 klaidingas

Tai visiškai išjungs visą produkto telemetriją.