Hailbytes VPN med brannmurdokumentasjon

Innholdsfortegnelse

Kom i gang

Trinn-for-trinn-instruksjoner for å distribuere Hailbytes VPN med Firezone GUI er gitt her. 

Administrer: Oppsett av serverforekomsten er direkte relatert til denne delen.

Brukerveiledninger: Nyttige dokumenter som kan lære deg hvordan du bruker Firezone og løser typiske problemer. Etter at serveren har blitt distribuert, se denne delen.

Veiledninger for vanlige konfigurasjoner

Delt tunnelering: Bruk VPN til kun å sende trafikk til bestemte IP-områder.

Hvitelisting: Angi en VPN-servers statiske IP-adresse for å bruke hvitelisting.

Omvendte tunneler: Lag tunneler mellom flere jevnaldrende ved å bruke omvendte tunneler.

Få støtte

Vi hjelper deg gjerne hvis du trenger hjelp til å installere, tilpasse eller bruke Hailbytes VPN.

Autentisering

Før brukere kan produsere eller laste ned enhetskonfigurasjonsfiler, kan Firezone konfigureres til å kreve autentisering. Brukere kan også trenge å autentisere seg med jevne mellomrom for å holde VPN-tilkoblingen aktiv.

Selv om Firezones standard innloggingsmetode er lokal e-post og passord, kan den også integreres med enhver standardisert OpenID Connect (OIDC) identitetsleverandør. Brukere kan nå logge på Firezone ved å bruke sin Okta-, Google-, Azure AD- eller privat identitetsleverandør.

 

Integrer en generisk OIDC-leverandør

Konfigurasjonsparameterne som trengs av Firezone for å tillate SSO ved bruk av en OIDC-leverandør er vist i eksemplet nedenfor. På /etc/firezone/firezone.rb kan du finne konfigurasjonsfilen. Kjør firezone-ctl reconfigure og firezone-ctl restart for å oppdatere applikasjonen og tre i kraft endringer.

 

# Dette er et eksempel som bruker Google og Okta som en SSO-identitetsleverandør.

# Flere OIDC-konfigurasjoner kan legges til samme Firezone-forekomst.

 

# Firezone kan deaktivere en brukers VPN hvis det oppdages en feil ved å prøve

# for å oppdatere deres access_token. Dette er bekreftet til å fungere for Google, Okta og

# Azure SSO og brukes til automatisk å koble fra en brukers VPN hvis de fjernes

# fra OIDC-leverandøren. La dette være deaktivert hvis din OIDC-leverandør

# har problemer med å oppdatere tilgangstokener da det uventet kan avbryte en

# brukers VPN-økt.

default['firezone']['authentication']['disable_vpn_on_oidc_error'] = usant

 

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

  Google: {

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

    klient-ID: " ",

    client_secret: " ",

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

    response_type: "kode",

    omfang: "openid e-postprofil",

    label: «Google»

  },

  okta: {

    discovery_document_uri: "https:// /.velkjent/openid-konfigurasjon”,

    klient-ID: " ",

    client_secret: " ",

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

    response_type: "kode",

    scope: "openid email profile offline_access",

    etikett: "Okta"

  }

}



Følgende konfigurasjonsinnstillinger kreves for integrasjonen:

  1. discovery_document_uri: Den OpenID Connect-leverandørens konfigurasjons-URI som returnerer et JSON-dokument som brukes til å konstruere påfølgende forespørsler til denne OIDC-leverandøren.
  2. client_id: Klient-IDen til applikasjonen.
  3. client_secret: Klienthemmeligheten til applikasjonen.
  4. redirect_uri: Instruerer OIDC-leverandøren hvor de skal omdirigere etter autentisering. Dette bør være din Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/google/callback/).
  5. response_type: Sett til kode.
  6. omfang: OIDC-omfang å få fra din OIDC-leverandør. Dette bør settes til openid e-postprofil eller openid e-postprofil offline_access avhengig av leverandøren.
  7. label: Knappeetikettteksten som vises på Firezone-påloggingsskjermen.

Pene URLer

For hver OIDC-leverandør opprettes det en tilsvarende pen URL for å omdirigere til den konfigurerte leverandørens påloggings-URL. For eksempelet OIDC-konfigurasjonen ovenfor er nettadressene:

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

Instruksjoner for Firezone-oppsett med populære identitetsleverandører

Leverandører vi har dokumentasjon for:

  • Google
  • Okta
  • Azure Active Directory
  • Onelogin
  • Lokal godkjenning

 

Hvis din identitetsleverandør har en generisk OIDC-kobling og ikke er oppført ovenfor, vennligst gå til dokumentasjonen for informasjon om hvordan du henter de nødvendige konfigurasjonsinnstillingene.

Oppretthold regelmessig re-autentisering

Innstillingen under innstillinger/sikkerhet kan endres for å kreve periodisk re-autentisering. Dette kan brukes til å håndheve kravet om at brukere går inn i Firezone på regelmessig basis for å fortsette VPN-økten.

Sesjonslengden kan konfigureres til å være mellom én time og nitti dager. Ved å sette dette til Aldri kan du aktivere VPN-økter når som helst. Dette er standarden.

Re-autentisering

En bruker må avslutte VPN-økten sin og logge på Firezone-portalen for å autentisere en utløpt VPN-økt på nytt (URL spesifisert under distribusjon).

Du kan autentisere økten på nytt ved å følge de nøyaktige klientinstruksjonene du finner her.

 

Status for VPN-tilkobling

Brukere-sidens VPN-tilkoblingstabellkolonne viser en brukers tilkoblingsstatus. Dette er tilkoblingsstatusene:

AKTIVERT – Tilkoblingen er aktivert.

DEAKTIVERT – Tilkoblingen er deaktivert av en administrator- eller OIDC-oppdateringsfeil.

UTLØPT – Tilkoblingen er deaktivert på grunn av autentiseringsutløp eller en bruker har ikke logget på for første gang.

Google

Gjennom den generelle OIDC-koblingen muliggjør Firezone Single Sign-On (SSO) med Google Workspace og Cloud Identity. Denne veiledningen viser deg hvordan du får konfigurasjonsparametrene oppført nedenfor, som er nødvendige for integrasjonen:

  1. discovery_document_uri: Den OpenID Connect-leverandørens konfigurasjons-URI som returnerer et JSON-dokument som brukes til å konstruere påfølgende forespørsler til denne OIDC-leverandøren.
  2. client_id: Klient-IDen til applikasjonen.
  3. client_secret: Klienthemmeligheten til applikasjonen.
  4. redirect_uri: Instruerer OIDC-leverandøren hvor de skal omdirigere etter autentisering. Dette bør være din Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/google/callback/).
  5. response_type: Sett til kode.
  6. omfang: OIDC-omfang å få fra din OIDC-leverandør. Denne bør settes til openid e-postprofil for å gi Firezone brukerens e-post i de returnerte kravene.
  7. label: Knappeetikettteksten som vises på Firezone-påloggingsskjermen.

Få konfigurasjonsinnstillinger

1. OAuth-konfigurasjonsskjermâ € <

Hvis dette er første gang du oppretter en ny OAuth-klient-ID, blir du bedt om å konfigurere et samtykkeskjermbilde.

*Velg Intern for brukertype. Dette sikrer at bare kontoer som tilhører brukere i Google Workspace-organisasjonen din, kan opprette enhetskonfigurasjoner. IKKE velg Ekstern med mindre du vil la alle med en gyldig Google-konto opprette enhetskonfigurasjoner.

 

På appinformasjonsskjermen:

  1. Appnavn: Firezone
  2. Applogo: Firezone-logo (lagre lenke som).
  3. Appens hjemmeside: URL-en til Firezone-forekomsten din.
  4. Autoriserte domener: toppnivådomenet til Firezone-forekomsten din.

 

 

2. Opprett OAuth-klient-IDerâ € <

Denne delen er basert på Googles egen dokumentasjon om konfigurere OAuth 2.0.

Besøk Google Cloud Console Påloggingssiden side, klikk på + Opprett legitimasjon og velg OAuth-klient-ID.

På skjermbildet for opprettelse av OAuth-klient-ID:

  1. Sett applikasjonstype til nettapplikasjon
  2. Legg til Firezone EXTERNAL_URL + /auth/oidc/google/callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/google/callback/) som en oppføring til autoriserte omdirigerings-URIer.

 

Etter å ha opprettet OAuth-klient-ID-en, vil du bli gitt en klient-ID og klienthemmelighet. Disse vil bli brukt sammen med omdirigerings-URI i neste trinn.

Brannsone-integrasjon

Rediger /etc/firezone/firezone.rb for å inkludere alternativene nedenfor:

 

# Bruker Google som SSO-identitetsleverandør

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

  Google: {

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

    klient-ID: " ",

    client_secret: " ",

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

    response_type: "kode",

    omfang: "openid e-postprofil",

    label: «Google»

  }

}

 

Kjør firezone-ctl reconfigure og firezone-ctl restart for å oppdatere applikasjonen. Du bør nå se en Logg på med Google-knapp ved root-nettadressen til Firezone.

Okta

Firezone bruker den generiske OIDC-kontakten for å lette Single Sign-On (SSO) med Okta. Denne opplæringen viser deg hvordan du får konfigurasjonsparametrene oppført nedenfor, som er nødvendige for integrasjonen:

  1. discovery_document_uri: Den OpenID Connect-leverandørens konfigurasjons-URI som returnerer et JSON-dokument som brukes til å konstruere påfølgende forespørsler til denne OIDC-leverandøren.
  2. client_id: Klient-IDen til applikasjonen.
  3. client_secret: Klienthemmeligheten til applikasjonen.
  4. redirect_uri: Instruerer OIDC-leverandøren hvor de skal omdirigere etter autentisering. Dette bør være din Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/okta/callback/).
  5. response_type: Sett til kode.
  6. omfang: OIDC-omfang å få fra din OIDC-leverandør. Denne bør settes til openid e-postprofil offline_access for å gi Firezone brukerens e-post i de returnerte kravene.
  7. label: Knappeetikettteksten som vises på Firezone-påloggingsskjermen.

 

Integrer Okta-appen

Denne delen av veiledningen er basert på Oktas dokumentasjon.

Gå til applikasjoner > applikasjoner i administrasjonskonsollen og klikk på Opprett appintegrasjon. Sett påloggingsmetode til OICD – OpenID Connect og applikasjonstype til webapplikasjon.

Konfigurer disse innstillingene:

  1. Appnavn: Firezone
  2. Applogo: Firezone-logo (lagre lenke som).
  3. Tildelingstype: Merk av for Oppdater token-boksen. Dette sikrer at Firezone synkroniseres med identitetsleverandøren og VPN-tilgangen avsluttes når brukeren er fjernet.
  4. Påloggingsviderekoblings-URIer: Legg til Firezone EXTERNAL_URL + /auth/oidc/okta/callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/okta/callback/) som en oppføring til autoriserte omdirigerings-URIer .
  5. Oppdrag: Begrens til gruppene du ønsker å gi tilgang til Firezone-forekomsten.

Når innstillingene er lagret, vil du bli gitt en klient-ID, klienthemmelighet og Okta Domain. Disse 3 verdiene vil bli brukt i trinn 2 for å konfigurere brannsonen.

Integrer Firezone

Rediger /etc/firezone/firezone.rb for å inkludere alternativene nedenfor. Din discovery_document_url vil være /.velkjent/openid-konfigurasjon lagt til på slutten av din okta_domene.

 

# Bruker Okta som SSO-identitetsleverandør

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

  okta: {

    discovery_document_uri: "https:// /.velkjent/openid-konfigurasjon”,

    klient-ID: " ",

    client_secret: " ",

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

    response_type: "kode",

    scope: "openid email profile offline_access",

    etikett: "Okta"

  }

}

 

Kjør firezone-ctl reconfigure og firezone-ctl restart for å oppdatere applikasjonen. Du skal nå se en Logg på med Okta-knapp ved roten Firezone URL.

 

Begrens tilgang til enkelte brukere

Brukerne som kan få tilgang til Firezone-appen kan begrenses av Okta. Gå til Okta Admin Console's Firezone App Integration's Assignments-side for å oppnå dette.

Azure Active Directory

Gjennom den generiske OIDC-koblingen aktiverer Firezone Single Sign-On (SSO) med Azure Active Directory. Denne håndboken viser deg hvordan du får konfigurasjonsparametrene oppført nedenfor, som er nødvendige for integrasjonen:

  1. discovery_document_uri: Den OpenID Connect-leverandørens konfigurasjons-URI som returnerer et JSON-dokument som brukes til å konstruere påfølgende forespørsler til denne OIDC-leverandøren.
  2. client_id: Klient-IDen til applikasjonen.
  3. client_secret: Klienthemmeligheten til applikasjonen.
  4. redirect_uri: Instruerer OIDC-leverandøren hvor de skal omdirigere etter autentisering. Dette bør være din Firezone EXTERNAL_URL + /auth/oidc/ /callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/azure/callback/).
  5. response_type: Sett til kode.
  6. omfang: OIDC-omfang å få fra din OIDC-leverandør. Denne bør settes til openid e-postprofil offline_access for å gi Firezone brukerens e-post i de returnerte kravene.
  7. label: Knappeetikettteksten som vises på Firezone-påloggingsskjermen.

Få konfigurasjonsinnstillinger

Denne veiledningen er hentet fra Azure Active Directory Docs.

 

Gå til Azure-portalens Azure Active Directory-side. Velg Administrer menyalternativet, velg Ny registrering, og registrer deg deretter ved å oppgi informasjonen nedenfor:

  1. Navn: Firezone
  2. Støttede kontotyper: (kun standardkatalog – enkelt leietaker)
  3. Omdirigerings-URI: Dette bør være din brannsone EXTERNAL_URL + /auth/oidc/azure/callback/ (f.eks. https://instance-id.yourfirezone.com/auth/oidc/azure/callback/). Pass på at du inkluderer den etterfølgende skråstreken. Dette vil være redirect_uri-verdien.

 

Etter registrering åpner du detaljvisningen for applikasjonen og kopierer Søknad (klient) ID. Dette vil være client_id-verdien. Deretter åpner du endepunktmenyen for å hente OpenID Connect-metadatadokument. Dette vil være discovery_document_uri-verdien.

 

Opprett en ny klienthemmelighet ved å klikke på alternativet Sertifikater og hemmeligheter under Administrer-menyen. Kopier klienthemmeligheten; klientens hemmelige verdi vil være denne.

 

Til slutt velger du koblingen API-tillatelser under Administrer-menyen, klikker Legg til en tillatelse, og velg Microsoft Graph, Legg emalje, åpenid, offline_tilgang og profil til de nødvendige tillatelsene.

Brannsone-integrasjon

Rediger /etc/firezone/firezone.rb for å inkludere alternativene nedenfor:

 

# Bruker Azure Active Directory som SSO-identitetsleverandør

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

  asurblå: {

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

    klient-ID: " ",

    client_secret: " ",

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

    response_type: "kode",

    scope: "openid email profile offline_access",

    etikett: "Azure"

  }

}

 

Kjør firezone-ctl reconfigure og firezone-ctl restart for å oppdatere applikasjonen. Du bør nå se en Logg på med Azure-knapp ved roten Firezone URL.

Slik gjør du: Begrens tilgang til enkelte medlemmer

Azure AD gjør det mulig for administratorer å begrense apptilgang til en bestemt gruppe brukere i bedriften din. Mer informasjon om hvordan du gjør dette finner du i Microsofts dokumentasjon.

Administrere

  • Konfigurer
  • Administrer installasjon
  • Oppgradere
  • Feilsøk
  • Sikkerhetshensyn
  • Kjører SQL-spørringer

Konfigurer

Chef Omnibus brukes av Firezone til å administrere oppgaver inkludert utgivelsespakking, prosessovervåking, loggadministrasjon og mer.

Ruby-koden utgjør den primære konfigurasjonsfilen, som ligger på /etc/firezone/firezone.rb. Å starte sudo firezone-ctl reconfigure på nytt etter å ha gjort endringer i denne filen får Chef til å gjenkjenne endringene og bruke dem på det gjeldende operativsystemet.

Se konfigurasjonsfilreferansen for en fullstendig liste over konfigurasjonsvariabler og deres beskrivelser.

Administrer installasjon

Firezone-forekomsten din kan administreres via brannsone-ctl kommando, som vist nedenfor. De fleste underkommandoer krever prefiks med sudo.

 

root@demo:~# firezone-ctl

omnibus-ctl: kommando (underkommando)

Generelle kommandoer:

  rens

    Slett *alle* brannsonedata, og start fra bunnen av.

  opprette-eller-tilbakestill-admin

    Tilbakestiller passordet for administratoren med e-post spesifisert som standard['firezone']['admin_email'] eller oppretter en ny administrator hvis den e-posten ikke eksisterer.

  hjelpe

    Skriv ut denne hjelpemeldingen.

  rekon

    Konfigurer applikasjonen på nytt.

  reset-nettverk

    Tilbakestiller nftables, WireGuard-grensesnittet og rutingtabellen tilbake til Firezone-standardene.

  show-config

    Vis konfigurasjonen som vil bli generert av reconfigure.

  rive-nettverk

    Fjerner WireGuard-grensesnitt og firezone nftables-tabell.

  tvinge-sert-fornyelse

    Tving sertifikatfornyelse nå selv om det ikke har utløpt.

  stopp-sert-fornyelse

    Fjerner cronjob som fornyer sertifikater.

  Avinstaller

    Drep alle prosesser og avinstaller prosessovervåkeren (data vil bli bevart).

  versjon

    Vis gjeldende versjon av Firezone

Tjenesteadministrasjonskommandoer:

  grasiøst drepe

    Forsøk en grasiøs stopp, så SIGKILL hele prosessgruppen.

  HUP

    Send tjenestene en HUP.

  int

    Send tjenestene en INT.

  drepe

    Send tjenestene en KILL.

  gang

    Start tjenestene hvis de er nede. Ikke start dem på nytt hvis de stopper.

  restart

    Stopp tjenestene hvis de kjører, og start dem på nytt.

  tjenesteliste

    Liste alle tjenestene (aktiverte tjenester vises med en *.)

  Begynn

    Start tjenester hvis de er nede, og start dem på nytt hvis de stopper.

  status

    Vis status for alle tjenestene.

  stoppe

    Stopp tjenestene, og ikke start dem på nytt.

  hale

    Se tjenesteloggene for alle aktiverte tjenester.

  begrep

    Send tjenestene en TERM.

  usr1

    Send tjenestene en USR1.

  usr2

    Send tjenestene en USR2.

Oppgradere

Alle VPN-økter må avsluttes før du oppgraderer Firezone, som også krever avslutning av nettgrensesnittet. Dersom noe skulle gå galt under oppgraderingen, anbefaler vi å sette av en time til vedlikehold.

 

For å forbedre Firezone, gjør følgende:

  1. Oppgrader firezone-pakken ved å bruke én-kommando-installasjonen: sudo -E bash -c "$(curl -fsSL https://github.com/firezone/firezone/raw/master/scripts/install.sh)"
  2. Kjør firezone-ctl reconfigure for å finne de nye endringene.
  3. Kjør firezone-ctl restart for å starte tjenester på nytt.

Hvis det oppstår problemer, vennligst gi oss beskjed pr sende inn en støttebillett.

Oppgrader fra <0.5.0 til >=0.5.0

Det er noen få bruddendringer og konfigurasjonsendringer i 0.5.0 som må løses. Finn ut mer nedenfor.

Bunted Nginx non_ssl_port (HTTP)-forespørsler fjernet

Nginx støtter ikke lenger kraft-SSL- og ikke-SSL-portparameterne fra versjon 0.5.0. Fordi Firezone trenger SSL for å fungere, anbefaler vi at du fjerner bundle Nginx-tjenesten ved å sette standard['firezone']['nginx']['enabled'] = false og dirigere omvendt proxy til Phoenix-appen på port 13000 i stedet (som standard) ).

ACME-protokollstøtte

0.5.0 introduserer ACME-protokollstøtte for automatisk fornyelse av SSL-sertifikater med den medfølgende Nginx-tjenesten. For å aktivere,

  • Sørg for at standard['firezone']['external_url'] inneholder en gyldig FQDN som løses til serverens offentlige IP-adresse.
  • Sørg for at port 80/tcp er tilgjengelig
  • Aktiver ACME-protokollstøtte med standard['firezone']['ssl']['acme']['enabled'] = true i konfigurasjonsfilen din.

Overlappende utgangsregeldestinasjoner

Muligheten for å legge til regler med dupliserte destinasjoner er borte i Firezone 0.5.0. Migreringsskriptet vårt vil automatisk gjenkjenne disse situasjonene under en oppgradering til 0.5.0 og bare beholde reglene hvis destinasjon inkluderer den andre regelen. Det er ingenting du trenger å gjøre hvis dette er greit.

Ellers, før du oppgraderer, anbefaler vi at du endrer regelsettet ditt for å bli kvitt disse situasjonene.

Forhåndskonfigurering av Okta og Google SSO

Firezone 0.5.0 fjerner støtte for den gamle Okta- og Google SSO-konfigurasjonen til fordel for den nye, mer fleksible OIDC-baserte konfigurasjonen. 

Hvis du har noen konfigurasjon under standard['firezone']['authentication']['okta'] eller standard['firezone']['authentication']['google']-nøkler, må du migrere disse til vår OIDC -basert konfigurasjon ved å bruke veiledningen nedenfor.

Eksisterende Google OAuth-konfigurasjon

Fjern disse linjene som inneholder de gamle Google OAuth-konfigurasjonene fra konfigurasjonsfilen som ligger på /etc/firezone/firezone.rb

 

default['firezone']['authentication']['google']['enabled']

default['firezone']['authentication']['google']['client_id']

default['firezone']['authentication']['google']['client_secret']

default['firezone']['authentication']['google']['redirect_uri']

 

Deretter konfigurerer du Google som en OIDC-leverandør ved å følge prosedyrene her.

(Gi koblingsinstruksjoner)<<<<<<<<<<<<<<<<

 

Konfigurer eksisterende Google OAuth 

Fjern disse linjene som inneholder de gamle Okta OAuth-konfigurasjonene fra konfigurasjonsfilen som ligger på /etc/firezone/firezone.rb

 

default['firezone']['authentication']['okta']['enabled']

default['firezone']['authentication']['okta']['client_id']

default['firezone']['authentication']['okta']['client_secret']

Standard['firezone']['authentication']['okta']['site']

 

Deretter konfigurerer du Okta som en OIDC-leverandør ved å følge prosedyrene her.

Oppgrader fra 0.3.x til >= 0.3.16

Avhengig av gjeldende oppsett og versjon, følg instruksjonene nedenfor:

Hvis du allerede har en OIDC-integrasjon:

For noen OIDC-leverandører krever oppgradering til >= 0.3.16 å skaffe et oppdateringstoken for frakoblet tilgangsomfang. Ved å gjøre dette er det sikret at Firezone oppdaterer med identitetsleverandøren og at VPN-tilkoblingen blir slått av etter at en bruker er slettet. Firezones tidligere iterasjoner manglet denne funksjonen. I noen tilfeller kan brukere som er slettet fra din identitetsleverandør fortsatt være koblet til en VPN.

Det er nødvendig å inkludere frakoblet tilgang i omfangsparameteren til OIDC-konfigurasjonen din for OIDC-leverandører som støtter frakoblet tilgangsomfang. Firezone-ctl reconfigure må utføres for å ta i bruk endringer i Firezone-konfigurasjonsfilen, som ligger på /etc/firezone/firezone.rb.

For brukere som har blitt autentisert av din OIDC-leverandør, vil du se OIDC Connections-overskriften på brukerdetaljsiden til nettgrensesnittet hvis Firezone klarer å hente oppdateringstokenet.

Hvis dette ikke fungerer, må du slette den eksisterende OAuth-appen og gjenta OIDC-oppsetttrinnene for å opprette en ny appintegrasjon .

Jeg har en eksisterende OAuth-integrasjon

Før 0.3.11 brukte Firezone forhåndskonfigurerte OAuth2-leverandører. 

Følg instruksjonene her. å migrere til OIDC.

Jeg har ikke integrert en identitetsleverandør

Ingen handling nødvendig. 

Du kan følge instruksjonene her. for å aktivere SSO gjennom en OIDC-leverandør.

Oppgrader fra 0.3.1 til >= 0.3.2

I stedet har standard['firezone']['external url'] erstattet konfigurasjonsalternativet default['firezone']['fqdn']. 

Sett dette til URL-en til Firezone-nettportalen din som er tilgjengelig for allmennheten. Den vil som standard være https:// pluss FQDN til serveren din hvis den ikke er definert.

Konfigurasjonsfilen er plassert på /etc/firezone/firezone.rb. Se konfigurasjonsfilreferansen for en fullstendig liste over konfigurasjonsvariabler og deres beskrivelser.

Oppgrader fra 0.2.x til 0.3.x

Firezone holder ikke lenger enhetens private nøkler på Firezone-serveren fra og med versjon 0.3.0. 

Firezone Web UI vil ikke tillate deg å laste ned på nytt eller se disse konfigurasjonene, men eventuelle eksisterende enheter bør fortsette å fungere som de er.

Oppgrader fra 0.1.x til 0.2.x

Hvis du oppgraderer fra Firezone 0.1.x, er det noen få konfigurasjonsfilendringer som må håndteres manuelt. 

For å gjøre de nødvendige endringene i filen /etc/firezone/firezone.rb, kjør kommandoene nedenfor som 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']['intervall'] = 3_600” >> /etc/firezone/firezone.rb

firezone-ctl rekonfigurere

firezone-ctl omstart

Feilsøking

Å sjekke Firezone-loggene er et klokt første skritt for eventuelle problemer som kan oppstå.

Kjør sudo firezone-ctl tail for å se Firezone-loggene.

Feilsøking av tilkoblingsproblemer

De fleste tilkoblingsproblemer med Firezone skyldes inkompatible iptables eller nftables-regler. Du må sørge for at eventuelle regler du har i kraft ikke kolliderer med Firezone-reglene.

Internett-tilkobling synker når tunnelen er aktiv

Sørg for at FORWARD-kjeden tillater pakker fra WireGuard-klientene dine til stedene du vil slippe gjennom Firezone hvis Internett-tilkoblingen din blir dårligere hver gang du aktiverer WireGuard-tunnelen.

 

Dette kan oppnås hvis du bruker ufw ved å sørge for at standard rutingpolicy er tillat:

 

ubuntu@fz:~$ sudo ufw standard tillate rutet

Standard rutet policy endret til "tillat"

(husk å oppdatere reglene dine tilsvarende)

 

A ufw status for en typisk Firezone-server kan se slik ut:

 

ubuntu@fz:~$ sudo ufw status verbose

Status: aktiv

Pålogging: på (lav)

Standard: nekte (innkommende), tillat (utgående), tillat (rutet)

Nye profiler: hopp over

 

Til handling fra

— —— —-

22/tcp LOT INN hvor som helst

80/tcp LOT INN hvor som helst

443/tcp LOT INN hvor som helst

51820/udp LOT INN hvor som helst

22/tcp (v6) LOT INN hvor som helst (v6)

80/tcp (v6) LOT INN hvor som helst (v6)

443/tcp (v6) LOT INN hvor som helst (v6)

51820/udp (v6) LOT INN hvor som helst (v6)

Sikkerhetshensyn

Vi anbefaler å begrense tilgangen til nettgrensesnittet for ekstremt sensitive og virksomhetskritiske produksjonsdistribusjoner, som forklart nedenfor.

Tjenester og havner

 

Service

Standard port

Lytt adresse

Beskrivelse

Nginx

80, 443

alle

Offentlig HTTP(S)-port for å administrere Firezone og forenkle autentisering.

wire vakt

51820

alle

Offentlig WireGuard-port som brukes for VPN-økter. (UDP)

postgresql

15432

127.0.0.1

Kun lokal port brukt for medfølgende Postgresql-server.

Føniks

13000

127.0.0.1

Kun lokal port brukt av oppstrøms elixir-appserver.

Produksjonsdistribusjoner

Vi anbefaler deg å tenke på å begrense tilgangen til Firezones offentlig eksponerte nettbrukergrensesnitt (som standard porter 443/tcp og 80/tcp) og i stedet bruke WireGuard-tunnelen til å administrere Firezone for produksjon og offentlige utplasseringer der én enkelt administrator vil ha ansvaret å lage og distribuere enhetskonfigurasjoner til sluttbrukere.

 

Hvis for eksempel en administrator opprettet en enhetskonfigurasjon og opprettet en tunnel med den lokale WireGuard-adressen 10.3.2.2, vil følgende ufw-konfigurasjon gjøre det mulig for administratoren å få tilgang til Firezone-nettgrensesnittet på serverens wg-firezone-grensesnitt ved å bruke standard 10.3.2.1 tunnel adresse:

 

root@demo:~# ufw status detaljert

Status: aktiv

Pålogging: på (lav)

Standard: nekte (innkommende), tillat (utgående), tillat (rutet)

Nye profiler: hopp over

 

Til handling fra

— —— —-

22/tcp LOT INN hvor som helst

51820/udp LOT INN hvor som helst

Tillat hvor som helst 10.3.2.2

22/tcp (v6) LOT INN hvor som helst (v6)

51820/udp (v6) LOT INN hvor som helst (v6)

Dette ville bare forlate 22/tcp eksponert for SSH-tilgang for å administrere serveren (valgfritt), og 51820/utp eksponert for å etablere WireGuard-tunneler.

Kjør SQL Queries

Firezone pakker en Postgresql-server og matching psql verktøy som kan brukes fra det lokale skallet slik:

 

/opt/firezone/embedded/bin/psql \

  -U brannsone \

  -d brannsone \

  -h localhost \

  -p 15432 \

  -c «SQL_STATEMENT»

 

Dette kan være nyttig for feilsøkingsformål.

 

Vanlige oppgaver:

 

  • Viser alle brukere
  • Viser alle enheter
  • Endre en brukers rolle
  • Sikkerhetskopierer databasen



Viser alle brukere:

 

/opt/firezone/embedded/bin/psql \

  -U brannsone \

  -d brannsone \

  -h localhost \

  -p 15432 \

  -c "VELG * FRA brukere;"



Viser alle enheter:

 

/opt/firezone/embedded/bin/psql \

  -U brannsone \

  -d brannsone \

  -h localhost \

  -p 15432 \

  -c "VELG * FRA enheter;"



Endre en brukerrolle:

 

Sett rollen til "admin" eller "uprivilegert":

 

/opt/firezone/embedded/bin/psql \

  -U brannsone \

  -d brannsone \

  -h localhost \

  -p 15432 \

  -c "OPPDATER brukere SET role = 'admin' WHERE email = 'user@example.com';"



Sikkerhetskopiere databasen:

 

I tillegg er pg dump-programmet inkludert, som kan brukes til å ta regelmessige sikkerhetskopier av databasen. Kjør følgende kode for å dumpe en kopi av databasen i det vanlige SQL-spørringsformatet (erstatt /path/to/backup.sql med plasseringen der SQL-filen skal opprettes):

 

/opt/firezone/embedded/bin/pg_dump \

  -U brannsone \

  -d brannsone \

  -h localhost \

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

Brukerhåndbøker

  • Legg til brukere
  • Legg til enheter
  • Utgangsregler
  • Kundeinstruksjoner
  • Split Tunnel VPN
  • Omvendt tunnel 
  • NAT Gateway

Legg til brukere

Etter at Firezone har blitt distribuert, må du legge til brukere for å gi dem tilgang til nettverket ditt. Nettgrensesnittet brukes til å gjøre dette.

 

Webgrensesnitt


Ved å velge "Legg til bruker"-knappen under /users, kan du legge til en bruker. Du vil bli bedt om å gi brukeren en e-postadresse og et passord. For å gi tilgang til brukere i organisasjonen din automatisk, kan Firezone også grensesnitt og synkronisere med en identitetsleverandør. Flere detaljer er tilgjengelig i Verifisere. < Legg til en lenke til Autentiser

Legg til enheter

Vi anbefaler å be om at brukere oppretter sine egne enhetskonfigurasjoner slik at den private nøkkelen bare er synlig for dem. Brukere kan generere sine egne enhetskonfigurasjoner ved å følge instruksjonene på Kundeinstruksjoner side.

 

Genererer administrasjonsenhetskonfigurasjon

Alle brukerenhetskonfigurasjoner kan opprettes av Firezone-administratorer. På brukerprofilsiden som ligger på /users, velg alternativet "Legg til enhet" for å oppnå dette.

 

[Sett inn skjermbilde]

 

Du kan sende en e-post med WireGuard-konfigurasjonsfilen til brukeren etter å ha opprettet enhetsprofilen.

 

Brukere og enheter er koblet sammen. For mer informasjon om hvordan du legger til en bruker, se Legg til brukere.

Utgangsregler

Gjennom bruk av kjernens nettfiltersystem, muliggjør Firezone utgangsfiltreringsmuligheter for å spesifisere DROP eller ACCEPT pakker. All trafikk er normalt tillatt.

 

IPv4- og IPv6-CIDR-er og IP-adresser støttes via henholdsvis Tillatelseslisten og Denylisten. Du kan velge å dekke en regel for en bruker når du legger den til, som gjelder regelen på alle denne brukerens enheter.

Kundeinstruksjoner

Installer og konfigurer

For å etablere en VPN-tilkobling ved hjelp av den opprinnelige WireGuard-klienten, se denne veiledningen.

 

1. Installer den opprinnelige WireGuard-klienten

 

De offisielle WireGuard-klientene som ligger her er Firezone-kompatible:

 

MacOS

 

Windows

 

iOS

 

Android

 

Besøk det offisielle WireGuard-nettstedet på https://www.wireguard.com/install/ for OS-systemer som ikke er nevnt ovenfor.

 

2. Last ned enhetens konfigurasjonsfil

 

Enten din Firezone-administrator eller deg selv kan generere enhetskonfigurasjonsfilen ved hjelp av Firezone-portalen.

 

Gå til URL-en din Firezone-administrator har oppgitt for å generere en enhetskonfigurasjonsfil selv. Firmaet ditt vil ha en unik URL for dette; i dette tilfellet er det https://instance-id.yourfirezone.com.

 

Logg på Firezone Okta SSO

 

[Sett inn skjermbilde]

 

3. Legg til klientens konfigurasjon

 

Importer.conf-filen til WireGuard-klienten ved å åpne den. Ved å snu Aktiver-bryteren kan du starte en VPN-økt.

 

[Sett inn skjermbilde]

Reautentisering av økten

Følg instruksjonene nedenfor hvis nettverksadministratoren din har beordret gjentakende autentisering for å holde VPN-tilkoblingen aktiv. 



Du trenger:

 

Firezone-portalens URL: Spør nettverksadministratoren om tilkoblingen.

Nettverksadministratoren din skal kunne tilby pålogging og passord. Firezone-nettstedet vil be deg om å logge på ved hjelp av enkeltpåloggingstjenesten din arbeidsgiver bruker (som Google eller Okta).

 

1. Slå av VPN-tilkoblingen

 

[Sett inn skjermbilde]

 

2. Autentiser på nytt 

Gå til Firezone-portalens URL og logg på med påloggingsinformasjonen din nettverksadministrator har oppgitt. Hvis du allerede er logget på, klikker du på knappen Autentiser på nytt før du logger på igjen.

 

[Sett inn skjermbilde]

 

Trinn 3: Start en VPN-økt

[Sett inn skjermbilde]

Network Manager for Linux

For å importere WireGuard-konfigurasjonsprofilen ved hjelp av Network Manager CLI på Linux-enheter, følg disse instruksjonene (nmcli).

MERKNADER

Hvis profilen har IPv6-støtte aktivert, kan forsøk på å importere konfigurasjonsfilen ved hjelp av Network Manager GUI mislykkes med følgende feil:

ipv6.method: metoden "auto" støttes ikke for WireGuard

1. Installer WireGuard-verktøyene 

Det er nødvendig å installere WireGuard brukerromsverktøy. Dette vil være en pakke kalt wireguard eller wireguard-tools for Linux-distribusjoner.

For Ubuntu/Debian:

sudo apt installer wireguard

For å bruke Fedora:

sudo dnf installer wireguard-verktøy

Arch Linux:

sudo pacman -S wireguard-verktøy

Besøk det offisielle WireGuard-nettstedet på https://www.wireguard.com/install/ for distribusjoner som ikke er nevnt ovenfor.

2. Last ned konfigurasjon 

Enten din Firezone-administrator eller egengenerering kan generere enhetskonfigurasjonsfilen ved hjelp av Firezone-portalen.

Gå til URL-en din Firezone-administrator har oppgitt for å generere en enhetskonfigurasjonsfil selv. Firmaet ditt vil ha en unik URL for dette; i dette tilfellet er det https://instance-id.yourfirezone.com.

[Sett inn skjermbilde]

3. Importer innstillinger

Importer den medfølgende konfigurasjonsfilen ved å bruke nmcli:

sudo nmcli tilkobling import type wireguard fil /path/to/configuration.conf

MERKNADER

Navnet på konfigurasjonsfilen vil tilsvare WireGuard-tilkoblingen/grensesnittet. Etter import kan tilkoblingen gis nytt navn om nødvendig:

nmcli-tilkobling endre [gammelt navn] forbindelse.id [nytt navn]

4. Koble til eller fra

Via kommandolinjen kobler du til VPN på følgende måte:

nmcli-tilkobling opp [vpn-navn]

For å koble fra:

nmcli-tilkobling ned [vpn-navn]

Den aktuelle Network Manager-appleten kan også brukes til å administrere tilkoblingen hvis du bruker en GUI.

Automatisk tilkobling

Ved å velge "ja" for autotilkoblingsalternativet, kan VPN-tilkoblingen konfigureres til å koble til automatisk:

 

nmcli-tilkobling endre [vpn-navn]-tilkobling. <<<<<<<<<<<<<<<<<<<<<<

 

autokobling ja

 

For å deaktivere den automatiske tilkoblingen, sett den tilbake til nei:

 

nmcli-tilkobling endre [vpn-navn]-tilkobling.

 

autoconnect nr

Gjør multifaktorautentisering tilgjengelig

For å aktivere MFA Gå til Firezone-portalens /brukerkonto/register mfa-side. Bruk autentiseringsappen din til å skanne QR-koden etter at den er generert, og skriv deretter inn den sekssifrede koden.

Kontakt administratoren din for å tilbakestille tilgangsinformasjonen til kontoen din hvis du mister autentiseringsappen.

Split Tunnel VPN

Denne opplæringen vil lede deg gjennom prosessen med å sette opp WireGuards delte tunnelfunksjon med Firezone slik at bare trafikk til bestemte IP-områder videresendes gjennom VPN-serveren.

 

1. Konfigurer tillatte IP-er 

IP-områdene som klienten vil rute nettverkstrafikk for, er angitt i feltet Tillatte IP-er på /settings/default-siden. Bare de nyopprettede WireGuard-tunnelkonfigurasjonene produsert av Firezone vil bli påvirket av endringer i dette feltet.

 

[Sett inn skjermbilde]



Standardverdien er 0.0.0.0/0, ::/0, som ruter all nettverkstrafikk fra klienten til VPN-serveren.

 

Eksempler på verdier i dette feltet inkluderer:

 

0.0.0.0/0, ::/0 – all nettverkstrafikk vil bli rutet til VPN-serveren.

192.0.2.3/32 – bare trafikk til en enkelt IP-adresse vil bli rutet til VPN-serveren.

3.5.140.0/22 ​​– bare trafikk til IP-er i området 3.5.140.1 – 3.5.143.254 vil bli rutet til VPN-serveren. I dette eksemplet ble CIDR-området for ap-northeast-2 AWS-regionen brukt.



MERKNADER

Firezone velger utgangsgrensesnittet knyttet til den mest nøyaktige ruten først når den bestemmer hvor en pakke skal rutes.

 

2. Regenerer WireGuard-konfigurasjoner

Brukere må regenerere konfigurasjonsfilene og legge dem til sin opprinnelige WireGuard-klient for å oppdatere eksisterende brukerenheter med den nye delte tunnelkonfigurasjonen.

 

For instruksjoner, se Legg til enhet. <<<<<<<<<<< Legg til lenke

Omvendt tunnel

Denne håndboken vil demonstrere hvordan du kobler sammen to enheter som bruker Firezone som et relé. Et typisk brukstilfelle er å gi en administrator tilgang til en server, beholder eller maskin som er beskyttet av en NAT eller brannmur.

 

Node til node 

Denne illustrasjonen viser et enkelt scenario der enheter A og B bygger en tunnel.

 

[Sett inn brannsone arkitektonisk bilde]

 

Start med å lage enhet A og enhet B ved å navigere til /users/[user_id]/new_device. I innstillingene for hver enhet, sørg for at følgende parametere er satt til verdiene oppført nedenfor. Du kan angi enhetsinnstillinger når du oppretter enhetskonfigurasjonen (se Legg til enheter). Hvis du trenger å oppdatere innstillingene på en eksisterende enhet, kan du gjøre det ved å generere en ny enhetskonfigurasjon.

 

Merk at alle enheter har en /settings/defaults-side hvor PersistentKeepalive kan konfigureres.

 

Enhet A.

 

TillatteIPs = 10.3.2.2/32

  Dette er IP-en eller rekkevidden av IP-er til Enhet B

PersistentKeepalive = 25

  Hvis enheten er bak en NAT, sikrer dette at enheten er i stand til å holde tunnelen i live og fortsette å motta pakker fra WireGuard-grensesnittet. Vanligvis er en verdi på 25 tilstrekkelig, men du må kanskje redusere denne verdien avhengig av miljøet ditt.



B enhet

 

TillatteIPs = 10.3.2.3/32

Dette er IP-en eller rekkevidden av IP-er til Enhet A

PersistentKeepalive = 25

Administrasjonssak – én til mange noder

Dette eksemplet viser en situasjon der enhet A kan kommunisere med enheter B til D i begge retninger. Dette oppsettet kan representere en ingeniør eller administrator som har tilgang til en rekke ressurser (servere, containere eller maskiner) på tvers av ulike nettverk.

 

[Arkitektonisk diagram]<<<<<<<<<<<<<<<<<<<<<<<<

 

Sørg for at følgende innstillinger er gjort i hver enhets innstillinger til de tilsvarende verdiene. Når du oppretter enhetskonfigurasjonen, kan du spesifisere enhetsinnstillinger (se Legg til enheter). En ny enhetskonfigurasjon kan opprettes hvis innstillingene på en eksisterende enhet må oppdateres.

 

Enhet A (administratornode)

 

Tillatte IP-er = 10.3.2.3/32, 10.3.2.4/32, 10.3.2.5/32 

    Dette er IP-en til enhetene B til D. IP-ene til enhetene B til D må inkluderes i et hvilket som helst IP-område du velger å angi.

PersistentKeepalive = 25 

    Dette garanterer at enheten kan vedlikeholde tunnelen og fortsette å motta pakker fra WireGuard-grensesnittet selv om den er beskyttet av en NAT. I de fleste tilfeller er en verdi på 25 tilstrekkelig, men avhengig av omgivelsene dine må du kanskje senke dette tallet.

 

Enhet B

 

  • Tillatte IP-er = 10.3.2.2/32: Dette er IP-en eller rekkevidden av IP-er for Enhet A
  • PersistentKeepalive = 25

Enhet C

 

  • Tillatte IP-er = 10.3.2.2/32: Dette er IP-en eller rekkevidden av IP-er for Enhet A
  • PersistentKeepalive = 25

Enhet D

 

  • Tillatte IP-er = 10.3.2.2/32: Dette er IP-en eller rekkevidden av IP-er for Enhet A
  • PersistentKeepalive = 25

NAT Gateway

For å tilby en enkelt, statisk utgående IP som all trafikken til teamet ditt skal flyte ut av, kan Firezone brukes som en NAT-gateway. Disse situasjonene involverer hyppig bruk:

 

Konsulentoppdrag: Be om at kunden din godkjenner én enkelt statisk IP-adresse i stedet for hver ansatts unike enhets-IP.

Bruke en proxy eller maskering av kilde-IP-en din for sikkerhets- eller personvernformål.

 

Et enkelt eksempel på å begrense tilgangen til en selvdrevet nettapplikasjon til en enkelt hvitlistet statisk IP som kjører Firezone, vil bli demonstrert i dette innlegget. I denne illustrasjonen er Firezone og den beskyttede ressursen i forskjellige VPC-områder.

 

Denne løsningen brukes ofte i stedet for å administrere en IP-hviteliste for mange sluttbrukere, noe som kan være tidkrevende ettersom tilgangslisten utvides.

AWS eksempel

Målet vårt er å sette opp en Firezone-server på en EC2-instans for å omdirigere VPN-trafikk til den begrensede ressursen. I dette tilfellet fungerer Firezone som en nettverksproxy eller NAT-gateway for å gi hver tilkoblet enhet en unik offentlig utgående IP.

 

1. Installer Firezone-serveren

I dette tilfellet har en EC2-forekomst kalt tc2.micro en Firezone-forekomst installert på seg. For informasjon om distribusjon av Firezone, gå til implementeringsveiledningen. I forhold til AWS, vær sikker på:

 

Firezone EC2-instansens sikkerhetsgruppe tillater utgående trafikk til den beskyttede ressursens IP-adresse.

Firezone-forekomsten kommer med en elastisk IP. Trafikk som videresendes gjennom Firezone-forekomsten til eksterne destinasjoner vil ha dette som sin kilde-IP-adresse. Den aktuelle IP-adressen er 52.202.88.54.

 

[Sett inn skjermbilde]<<<<<<<<<<<<<<<<<<<<<<<<

 

2. Begrens tilgangen til ressursen som beskyttes

En selvdrevet nettapplikasjon fungerer som den beskyttede ressursen i dette tilfellet. Nettappen kan bare nås ved forespørsler som kommer fra IP-adressen 52.202.88.54. Avhengig av ressursen kan det være nødvendig å tillate innkommende trafikk på ulike porter og trafikktyper. Dette er ikke dekket i denne håndboken.

 

[Sett inn skjermbilde]<<<<<<<<<<<<<<<<<<<<<<<<

 

Fortell tredjeparten som har ansvaret for den beskyttede ressursen at trafikk fra den statiske IP-en definert i trinn 1 må tillates (i dette tilfellet 52.202.88.54).

 

3. Bruk VPN-serveren til å dirigere trafikk til den beskyttede ressursen

 

Som standard vil all brukertrafikk gå gjennom VPN-serveren og komme fra den statiske IP-en som ble konfigurert i trinn 1 (i dette tilfellet 52.202.88.54). Men hvis delt tunnelering er aktivert, kan innstillinger være nødvendige for å sikre at den beskyttede ressursens destinasjons-IP er oppført blant de tillatte IP-ene.

Legg til overskriftstekst her

Nedenfor vises en fullstendig liste over konfigurasjonsalternativene som er tilgjengelige i /etc/firezone/firezone.rb.



alternativ

beskrivelse

standardverdi

default['firezone']['external_url']

URL som brukes for å få tilgang til nettportalen til denne Firezone-forekomsten.

"https://#{node['fqdn'] || node['vertsnavn']}”

default['firezone']['config_directory']

Katalog på øverste nivå for Firezone-konfigurasjon.

/etc/firezone'

default['firezone']['install_directory']

Katalog på øverste nivå å installere Firezone på.

/opt/firezone'

default['firezone']['app_directory']

Katalog på øverste nivå for å installere Firezone-nettapplikasjonen.

“#{node['firezone']['install_directory']}/embedded/service/firezone”

default['firezone']['log_directory']

Katalog på øverste nivå for Firezone-logger.

/var/log/firezone'

default['firezone']['var_directory']

Toppnivåkatalog for Firezone runtime-filer.

/var/opt/firezone'

default['firezone']['user']

Navn på uprivilegert Linux-bruker de fleste tjenester og filer vil tilhøre.

brannsone'

default['firezone']['group']

Navnet på Linux-gruppen de fleste tjenester og filer vil tilhøre.

brannsone'

default['firezone']['admin_email']

E-postadresse for første Firezone-bruker.

«firezone@localhost»

default['firezone']['max_devices_per_user']

Maksimalt antall enheter en bruker kan ha.

10

default['firezone']['allow_unprivileged_device_management']

Lar ikke-administratorbrukere opprette og slette enheter.

TRUE

default['firezone']['allow_unprivileged_device_configuration']

Lar ikke-administratorbrukere endre enhetskonfigurasjoner. Når deaktivert, forhindrer uprivilegerte brukere fra å endre alle enhetsfelt bortsett fra navn og beskrivelse.

TRUE

default['firezone']['egress_interface']

Navn på grensesnitt der tunnelert trafikk vil gå ut. Hvis null, vil standard rutegrensesnitt brukes.

nil

default['firezone']['fips_enabled']

Aktiver eller deaktiver OpenSSL FIPs-modus.

nil

default['firezone']['logging']['enabled']

Aktiver eller deaktiver logging over Firezone. Sett til usann for å deaktivere logging helt.

TRUE

default['enterprise']['name']

Navn brukt av kokkens "bedrift"-kokebok.

brannsone'

default['firezone']['install_path']

Installasjonsbane som brukes av kokkens 'bedrift'-kokebok. Bør settes til det samme som install_directory ovenfor.

node['firezone']['install_directory']

default['firezone']['sysvinit_id']

En identifikator som brukes i /etc/inittab. Må være en unik sekvens på 1-4 tegn.

SUP'

default['firezone']['authentication']['local']['enabled']

Aktiver eller deaktiver lokal e-post-/passordautentisering.

TRUE

default['firezone']['authentication']['auto_create_oidc_users']

Opprett automatisk brukere som logger på fra OIDC for første gang. Deaktiver for å tillate bare eksisterende brukere å logge på via OIDC.

TRUE

default['firezone']['autentisering']['disable_vpn_on_oidc_error']

Deaktiver en brukers VPN hvis det oppdages en feil ved å prøve å oppdatere deres OIDC-token.

FALSK

default['firezone']['autentisering']['oidc']

OpenID Connect config, i formatet {“provider” => [config…]} – Se OpenIDConnect-dokumentasjon for konfigurasjonseksempler.

{}

default['firezone']['nginx']['enabled']

Aktiver eller deaktiver den medfølgende nginx-serveren.

TRUE

default['firezone']['nginx']['ssl_port']

HTTPS lytteport.

443

default['firezone']['nginx']['katalog']

Katalog for å lagre Firezone-relatert nginx virtuell vertskonfigurasjon.

“#{node['firezone']['var_directory']}/nginx/etc”

default['firezone']['nginx']['log_directory']

Katalog for å lagre Firezone-relaterte nginx-loggfiler.

“#{node['firezone']['log_directory']}/nginx”

default['firezone']['nginx']['log_rotation']['file_maxbytes']

Filstørrelse for å rotere Nginx-loggfiler.

104857600

default['firezone']['nginx']['log_rotation']['num_to_keep']

Antall Firezone nginx-loggfiler som skal beholdes før de kastes.

10

default['firezone']['nginx']['log_x_forwarded_for']

Om Firezone nginx x-forwarded-for header skal logges.

TRUE

default['firezone']['nginx']['hsts_header']['enabled']

Aktiver eller deaktiver HSTS.

TRUE

default['firezone']['nginx']['hsts_header']['include_subdomains']

Aktiver eller deaktiver includeSubDomains for HSTS-overskriften.

TRUE

default['firezone']['nginx']['hsts_header']['max_age']

Maks alder for HSTS-headeren.

31536000

default['firezone']['nginx']['redirect_to_canonical']

Om URL-er skal omdirigeres til det kanoniske FQDN som er spesifisert ovenfor

FALSK

default['firezone']['nginx']['cache']['enabled']

Aktiver eller deaktiver Firezone nginx-bufferen.

FALSK

default['firezone']['nginx']['cache']['katalog']

Katalog for Firezone nginx cache.

“#{node['firezone']['var_directory']}/nginx/cache”

default['firezone']['nginx']['user']

Firezone nginx-bruker.

node['firezone']['user']

default['firezone']['nginx']['group']

Firezone nginx gruppe.

node['firezone']['group']

default['firezone']['nginx']['dir']

Toppnivå nginx-konfigurasjonskatalog.

node['firezone']['nginx']['katalog']

default['firezone']['nginx']['log_dir']

Toppnivå nginx-loggkatalog.

node['firezone']['nginx']['log_directory']

default['firezone']['nginx']['pid']

Plassering for nginx pid-fil.

"#{node['firezone']['nginx']['katalog']}/nginx.pid”

default['firezone']['nginx']['daemon_disable']

Deaktiver nginx daemon-modus slik at vi kan overvåke den i stedet.

TRUE

default['firezone']['nginx']['gzip']

Slå nginx gzip-komprimering på eller av.

på'

default['firezone']['nginx']['gzip_static']

Slå nginx gzip-komprimering på eller av for statiske filer.

av'

default['firezone']['nginx']['gzip_http_version']

HTTP-versjon som skal brukes for visning av statiske filer.

1.0 '

default['firezone']['nginx']['gzip_comp_level']

nginx gzip komprimeringsnivå.

2 '

default['firezone']['nginx']['gzip_proxied']

Aktiverer eller deaktiverer gzipping av svar for proxy-forespørsler avhengig av forespørselen og svaret.

noen'

default['firezone']['nginx']['gzip_vary']

Aktiverer eller deaktiverer innsetting av "Vary: Accept-Encoding"-svaroverskriften.

av'

default['firezone']['nginx']['gzip_buffers']

Angir antall og størrelse på buffere som brukes til å komprimere et svar. Hvis null, brukes nginx standard.

nil

default['firezone']['nginx']['gzip_types']

MIME-typer for å aktivere gzip-komprimering for.

['text/plain', 'text/css','application/x-javascript', 'text/xml', 'application/xml', 'application/rss+xml', 'application/atom+xml', ' text/javascript', 'application/javascript', 'application/json']

default['firezone']['nginx']['gzip_min_length']

Minimum fillengde for å aktivere fil-gzip-komprimering for.

1000

default['firezone']['nginx']['gzip_disable']

User-agent matcher for å deaktivere gzip-komprimering for.

MSIE [1-6]\.'

default['firezone']['nginx']['keepalive']

Aktiverer cache for tilkobling til oppstrømsservere.

på'

default['firezone']['nginx']['keepalive_timeout']

Tidsavbrudd i sekunder for keepalive-tilkobling til oppstrømsservere.

65

default['firezone']['nginx']['worker_processes']

Antall nginx-arbeiderprosesser.

node['cpu'] && node['cpu']['total'] ? node['cpu']['total'] : 1

default['firezone']['nginx']['worker_connections']

Maks antall samtidige tilkoblinger som kan åpnes av en arbeidsprosess.

1024

default['firezone']['nginx']['worker_rlimit_nofile']

Endrer grensen for maksimalt antall åpne filer for arbeidsprosesser. Bruker nginx standard hvis null.

nil

default['firezone']['nginx']['multi_accept']

Om arbeidere skal akseptere én tilkobling om gangen eller flere.

TRUE

default['firezone']['nginx']['event']

Spesifiserer tilkoblingsbehandlingsmetoden som skal brukes i nginx-hendelseskontekst.

epoll'

default['firezone']['nginx']['server_tokens']

Aktiverer eller deaktiverer emitterende nginx-versjon på feilsider og i "Server"-svaroverskriftsfeltet.

nil

default['firezone']['nginx']['server_names_hash_bucket_size']

Angir bøttestørrelsen for hashtabellene for servernavnene.

64

default['firezone']['nginx']['sendfile']

Aktiverer eller deaktiverer bruken av nginx sin sendfile().

på'

default['firezone']['nginx']['access_log_options']

Angir alternativer for nginx-tilgangslogg.

nil

default['firezone']['nginx']['error_log_options']

Angir alternativer for nginx-feillogg.

nil

default['firezone']['nginx']['disable_access_log']

Deaktiverer nginx-tilgangslogg.

FALSK

default['firezone']['nginx']['types_hash_max_size']

nginx typer hash maks størrelse.

2048

default['firezone']['nginx']['types_hash_bucket_size']

nginx typer hash bøttestørrelse.

64

default['firezone']['nginx']['proxy_read_timeout']

nginx proxy lese timeout. Sett til null for å bruke nginx standard.

nil

default['firezone']['nginx']['client_body_buffer_size']

nginx klientens kroppsbufferstørrelse. Sett til null for å bruke nginx standard.

nil

default['firezone']['nginx']['client_max_body_size']

nginx klient maks kroppsstørrelse.

250 m'

default['firezone']['nginx']['default']['modules']

Spesifiser ytterligere nginx-moduler.

[]

default['firezone']['nginx']['enable_rate_limiting']

Aktiver eller deaktiver nginx-hastighetsbegrensning.

TRUE

default['firezone']['nginx']['rate_limiting_zone_name']

Nginx ratebegrensende sonenavn.

brannsone'

default['firezone']['nginx']['rate_limiting_backoff']

Nginx ratebegrensende backoff.

10 m'

default['firezone']['nginx']['rate_limit']

Nginx-hastighetsgrense.

10r/s'

default['firezone']['nginx']['ipv6']

Tillat nginx å lytte etter HTTP-forespørsler for IPv6 i tillegg til IPv4.

TRUE

default['firezone']['postgresql']['enabled']

Aktiver eller deaktiver medfølgende Postgresql. Sett til false og fyll ut databasealternativene nedenfor for å bruke din egen Postgresql-forekomst.

TRUE

default['firezone']['postgresql']['brukernavn']

Brukernavn for Postgresql.

node['firezone']['user']

default['firezone']['postgresql']['data_directory']

Postgresql datakatalog.

“#{node['firezone']['var_directory']}/postgresql/13.3/data”

default['firezone']['postgresql']['log_directory']

Postgresql loggkatalog.

“#{node['firezone']['log_directory']}/postgresql”

default['firezone']['postgresql']['log_rotation']['file_maxbytes']

Postgresql loggfil maksimal størrelse før den roteres.

104857600

default['firezone']['postgresql']['log_rotation']['num_to_keep']

Antall Postgresql-loggfiler å beholde.

10

default['firezone']['postgresql']['checkpoint_completion_target']

Postgresql sjekkpunkt fullføringsmål.

0.5

default['firezone']['postgresql']['checkpoint_segments']

Antall Postgresql-sjekkpunktsegmenter.

3

default['firezone']['postgresql']['checkpoint_timeout']

Tidsavbrudd for Postgresql-sjekkpunkt.

5 min'

default['firezone']['postgresql']['checkpoint_warning']

Postgresql-sjekkpunktvarslingstid i sekunder.

30-tallet

default['firezone']['postgresql']['effective_cache_size']

Postgresql effektiv cachestørrelse.

128MB'

default['firezone']['postgresql']['listen_address']

Postgresql lytteadresse.

127.0.0.1 '

default['firezone']['postgresql']['max_connections']

Postgresql max-tilkoblinger.

350

default['firezone']['postgresql']['md5_auth_cidr_addresses']

Postgresql CIDR-er for å tillate md5-aut.

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

default['firezone']['postgresql']['port']

Postgresql lytteport.

15432

default['firezone']['postgresql']['shared_buffers']

Postgresql delte buffere størrelse.

“#{(node['minne']['total'].to_i / 4) / 1024}MB”

default['firezone']['postgresql']['shmmax']

Postgresql shmmax i byte.

17179869184

default['firezone']['postgresql']['shmall']

Postgresql shmall i byte.

4194304

default['firezone']['postgresql']['work_mem']

Postgresql arbeidsminnestørrelse.

8MB'

default['firezone']['database']['user']

Angir brukernavnet Firezone vil bruke for å koble til DB.

node['firezone']['postgresql']['brukernavn']

default['firezone']['database']['password']

Hvis du bruker en ekstern DB, spesifiserer passordet Firezone vil bruke for å koble til DB.

forandre meg'

default['firezone']['database']['name']

Database som Firezone vil bruke. Vil bli opprettet hvis den ikke eksisterer.

brannsone'

default['firezone']['database']['vert']

Databasevert som Firezone vil koble til.

node['firezone']['postgresql']['listen_address']

default['firezone']['database']['port']

Databaseport som Firezone vil koble til.

node['firezone']['postgresql']['port']

default['firezone']['database']['pool']

Databasebassengstørrelsen Firezone vil bruke.

[10, Etc.nprosessorer].maks

default['firezone']['database']['ssl']

Om du skal koble til databasen over SSL.

FALSK

default['firezone']['database']['ssl_opts']

Hash av alternativer for å sende til alternativet :ssl_opts når du kobler til over SSL. Se Ecto.Adapters.Postgres dokumentasjon.

{}

default['firezone']['database']['parameters']

Hash av parametere som skal sendes til alternativet :parameters når du kobler til databasen. Se Ecto.Adapters.Postgres dokumentasjon.

{}

default['firezone']['database']['extensions']

Databaseutvidelser for å aktivere.

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

default['firezone']['phoenix']['enabled']

Aktiver eller deaktiver Firezone-nettprogrammet.

TRUE

default['firezone']['phoenix']['listen_address']

Firezone nettapplikasjon lytteadresse. Dette vil være oppstrøms lytteadressen som nginx proxyer.

127.0.0.1 '

default['firezone']['phoenix']['port']

Firezone nettapplikasjon lytteport. Dette vil være oppstrømsporten som nginx proxyer.

13000

default['firezone']['phoenix']['log_directory']

Firezone nettapplikasjonsloggkatalog.

"#{node['firezone']['log_directory']}/phoenix

default['firezone']['phoenix']['log_rotation']['file_maxbytes']

Firezone nettapplikasjonsloggfilstørrelse.

104857600

default['firezone']['phoenix']['log_rotation']['num_to_keep']

Antall Firezone-loggfiler for nettapplikasjoner å beholde.

10

default['firezone']['phoenix']['crash_detection']['enabled']

Aktiver eller deaktiver fjerning av Firezone-nettapplikasjonen når en krasj oppdages.

TRUE

default['firezone']['phoenix']['external_trusted_proxies']

Liste over pålitelige omvendte proxyer formatert som en rekke IP-er og/eller CIDR-er.

[]

default['firezone']['phoenix']['private_clients']

Liste over private nettverk HTTP-klienter, formatert en rekke IP-er og/eller CIDR-er.

[]

default['firezone']['wireguard']['enabled']

Aktiver eller deaktiver medfølgende WireGuard-administrasjon.

TRUE

default['firezone']['wireguard']['log_directory']

Loggkatalog for medfølgende WireGuard-administrasjon.

"#{node['firezone']['log_directory']}/wireguard

default['firezone']['wireguard']['log_rotation']['file_maxbytes']

Maks størrelse på WireGuard-loggfilen.

104857600

default['firezone']['wireguard']['log_rotation']['num_to_keep']

Antall WireGuard-loggfiler å beholde.

10

default['firezone']['wireguard']['interface_name']

WireGuard-grensesnittnavn. Endring av denne parameteren kan føre til et midlertidig tap av VPN-tilkobling.

wg-firezone'

default['firezone']['wireguard']['port']

WireGuard lytteport.

51820

default['firezone']['wireguard']['mtu']

WireGuard-grensesnitt MTU for denne serveren og for enhetskonfigurasjoner.

1280

default['firezone']['wireguard']['endpoint']

WireGuard-endepunkt som skal brukes til å generere enhetskonfigurasjoner. Hvis null, brukes som standard serverens offentlige IP-adresse.

nil

default['firezone']['wireguard']['dns']

WireGuard DNS til bruk for genererte enhetskonfigurasjoner.

1.1.1.1, 1.0.0.1′

default['firezone']['wireguard']['allowed_ips']

WireGuard tillot IP-er å bruke for genererte enhetskonfigurasjoner.

0.0.0.0/0, ::/0′

default['firezone']['wireguard']['persistent_keepalive']

Standard PersistentKeepalive-innstilling for genererte enhetskonfigurasjoner. En verdi på 0 deaktiverer.

0

default['firezone']['wireguard']['ipv4']['enabled']

Aktiver eller deaktiver IPv4 for WireGuard-nettverk.

TRUE

default['firezone']['wireguard']['ipv4']['masquerade']

Aktiver eller deaktiver maskerade for pakker som forlater IPv4-tunnelen.

TRUE

default['firezone']['wireguard']['ipv4']['nettverk']

WireGuard nettverk IPv4 adresse pool.

10.3.2.0 / 24 ′

default['firezone']['wireguard']['ipv4']['address']

WireGuard-grensesnitt IPv4-adresse. Må være innenfor WireGuard-adressegruppen.

10.3.2.1 '

default['firezone']['wireguard']['ipv6']['enabled']

Aktiver eller deaktiver IPv6 for WireGuard-nettverk.

TRUE

default['firezone']['wireguard']['ipv6']['masquerade']

Aktiver eller deaktiver maskerade for pakker som forlater IPv6-tunnelen.

TRUE

default['firezone']['wireguard']['ipv6']['nettverk']

WireGuard nettverk IPv6 adresse pool.

fd00::3:2:0/120′

default['firezone']['wireguard']['ipv6']['address']

WireGuard-grensesnitt IPv6-adresse. Må være innenfor IPv6-adresseutvalget.

fd00::3:2:1′

default['firezone']['runit']['svlogd_bin']

Runit svlogd bin plassering.

“#{node['firezone']['install_directory']}/embedded/bin/svlogd”

default['firezone']['ssl']['katalog']

SSL-katalog for lagring av genererte sertifikater.

/var/opt/firezone/ssl'

default['firezone']['ssl']['email_address']

E-postadresse som skal brukes for selvsignerte sertifikater og meldinger om fornyelse av ACME-protokollen.

du@example.com'

default['firezone']['ssl']['acme']['enabled']

Aktiver ACME for automatisk klargjøring av SSL-sert. Deaktiver dette for å forhindre at Nginx lytter på port 80. Se her. for flere instruksjoner.

FALSK

default['firezone']['ssl']['acme']['server']

ACME-server til bruk for utstedelse/fornyelse av sertifikater. Kan være hvilken som helst gyldig acme.sh-server

letsencrypt

default['firezone']['ssl']['acme']['keylength']

Angi nøkkeltype og lengde for SSL-sertifikater. Se her.

ec-256

default['firezone']['ssl']['sertifikat']

Banen til sertifikatfilen for FQDN. Overstyrer ACME-innstillingen ovenfor hvis spesifisert. Hvis både ACME og dette er null, vil et selvsignert sertifikat bli generert.

nil

default['firezone']['ssl']['certificate_key']

Banen til sertifikatfilen.

nil

default['firezone']['ssl']['ssl_dhparam']

nginx ssl dh_param.

nil

default['firezone']['ssl']['country_name']

Landnavn for selvsignert sertifikat.

OSS'

default['firezone']['ssl']['state_name']

Oppgi navn for selvsignert sertifikat.

CA '

default['firezone']['ssl']['locality_name']

Lokalitetsnavn for selvsignert sertifikat.

San Fransisco'

default['firezone']['ssl']['company_name']

Firmanavn selvsignert sertifikat.

Mitt selskap'

default['firezone']['ssl']['organizational_unit_name']

Organisasjonsenhetsnavn for selvsignert sertifikat.

operasjoner'

default['firezone']['ssl']['ciphers']

SSL-chiffer for nginx å bruke.

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’

default['firezone']['ssl']['fips_ciphers']

SSL-chiffer for FIP-modus.

FIPS@STRENGTH:!aNULL:!eNULL'

default['firezone']['ssl']['protokoller']

TLS-protokoller å bruke.

TLSv1 TLSv1.1 TLSv1.2′

default['firezone']['ssl']['session_cache']

SSL-øktbuffer.

delt:SSL:4m'

default['firezone']['ssl']['session_timeout']

Tidsavbrudd for SSL-økter.

5 m'

default['firezone']['robots_allow']

nginx-roboter tillater.

/'

default['firezone']['robots_disallow']

nginx-roboter tillater ikke.

nil

default['firezone']['outbound_email']['from']

Utgående e-post fra adresse.

nil

default['firezone']['outbound_email']['provider']

Tjenesteleverandør for utgående e-post.

nil

default['firezone']['outbound_email']['configs']

Konfigurasjoner for utgående e-postleverandør.

se omnibus/kokebøker/firezone/attributes/default.rb

default['firezone']['telemetry']['enabled']

Aktiver eller deaktiver anonymisert produkttelemetri.

TRUE

default['firezone']['connectivity_checks']['enabled']

Aktiver eller deaktiver Firezone-tilkoblingskontrolltjenesten.

TRUE

default['firezone']['connectivity_checks']['intervall']

Intervall mellom tilkoblingskontroller i sekunder.

3_600



________________________________________________________________

 

Fil- og katalogplasseringer

 

Her finner du en liste over filer og kataloger relatert til en typisk Firezone-installasjon. Disse kan endres avhengig av endringer i konfigurasjonsfilen.



banen

beskrivelse

/var/opt/firezone

Katalog på toppnivå som inneholder data og generert konfigurasjon for Firezone-pakketjenester.

/opt/brannsone

Katalog på toppnivå som inneholder innebygde biblioteker, binærfiler og kjøretidsfiler som trengs av Firezone.

/usr/bin/firezone-ctl

firezone-ctl-verktøy for å administrere Firezone-installasjonen.

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

systemd-enhetsfil for å starte Firezone runsvdir-veilederprosessen.

/etc/firezone

Firezone konfigurasjonsfiler.



__________________________________________________________

 

Brannmurmaler

 

Denne siden var tom i dokumenter

 

_____________________________________________________________

 

Nftables brannmurmal

 

Følgende nftables brannmurmal kan brukes til å sikre serveren som kjører Firezone. Malen gjør noen antakelser; Det kan hende du må justere reglene for å passe til ditt bruksområde:

  • WireGuard-grensesnittet heter wg-firezone. Hvis dette ikke er riktig, endre DEV_WIREGUARD-variabelen slik at den samsvarer med standard ['firezone']['wireguard']['interface_name'] konfigurasjonsalternativet.
  • Porten WireGuard lytter på er 51820. Hvis du ikke bruker standardporten, endre WIREGUARD_PORT-variabelen.
  • Bare følgende innkommende trafikk vil tillates til serveren:
    • SSH (TCP-port 22)
    • HTTP (TCP-port 80)
    • HTTPS (TCP-port 443)
    • WireGuard (UDP-port WIREGUARD_PORT)
    • UDP traceroute (UDP-port 33434-33524, hastighet begrenset til 500/sekund)
    • ICMP og ICMPv6 (ping/ping-svarfrekvens begrenset til 2000/sekund)
  • Bare følgende utgående trafikk vil tillates fra serveren:
    • DNS (UDP- og TCP-port 53)
    • HTTP (TCP-port 80)
    • NTP (UDP-port 123)
    • HTTPS (TCP-port 443)
    • SMTP-innsending (TCP-port 587)
    • UDP traceroute (UDP-port 33434-33524, hastighet begrenset til 500/sekund)
  • Uovertruffen trafikk vil bli logget. Reglene som brukes for logging er atskilt fra reglene for å slippe trafikk og er ratebegrensede. Fjerning av relevante loggingsregler vil ikke påvirke trafikken.

Firezone administrerte reglerâ € <

Firezone konfigurerer sine egne nftables-regler for å tillate/avvise trafikk til destinasjoner konfigurert i webgrensesnittet og for å håndtere utgående NAT for klienttrafikk.

Bruk av brannmurmalen nedenfor på en server som allerede kjører (ikke ved oppstart) vil føre til at brannsonereglene blir slettet. Dette kan ha sikkerhetsmessige konsekvenser.

For å omgå dette, start phoenix-tjenesten på nytt:

firezone-ctl start phoenix på nytt

Base brannmurmalâ € <

#!/usr/sbin/nft -f

 

## Tøm/tøm alle eksisterende regler

flush regelsett

 

############################## VARIABLER ################# ###############

## Navn på Internett/WAN-grensesnitt

definer DEV_WAN = eth0

 

## WireGuard-grensesnittnavn

definer DEV_WIREGUARD = wg-brannsone

 

## WireGuard lytteport

definer WIREGUARD_PORT = 51820

############################# VARIABLER END ################## ############

 

# Hoved inet familie filtreringstabell

tabell inet filter {

 

 # Regler for videresendt trafikk

 # Denne kjeden behandles før Firezone forward-kjeden

 lenke frem {

   type filter krok fremover prioritet filter – 5; politikk godta

 }

 

 # Regler for inngangstrafikk

 kjedeinngang {

   type filter krok input prioritet filter; politikk fall

 

   ## Tillat innkommende trafikk til loopback-grensesnitt

   hvis lo \

     aksepterer \

     kommentere "Tillat all trafikk inn fra loopback-grensesnitt"

 

   ## Tillat etablerte og relaterte forbindelser

   ct-stat etablert, relatert \

     aksepterer \

     kommentere "Tillat etablerte/relaterte forbindelser"

 

   ## Tillat innkommende WireGuard-trafikk

   IIF $DEV_WAN udp dport $WIREGUARD_PORT \

     disk \

     aksepterer \

     kommentere "Tillat innkommende WireGuard-trafikk"

 

   ## Logg og slipp nye TCP-ikke-SYN-pakker

   tcp flagg != syn ct state new \

     grensesats 100/minutt utbrudd 150 pakker \

     loggprefiks “IN – Ny !SYN: “ \

     kommentere "Logging av hastighetsgrense for nye tilkoblinger som ikke har SYN TCP-flagget satt"

   tcp flagg != syn ct state new \

     disk \

     miste \

     kommentere "Slipp nye tilkoblinger som ikke har SYN TCP-flagget satt"

 

   ## Logg og slipp TCP-pakker med ugyldig fin/syn-flaggsett

   tcp flagg & (fin|syn) == (fin|syn) \

     grensesats 100/minutt utbrudd 150 pakker \

     loggprefiks “IN – TCP FIN|SIN: “ \

     kommentere "Logging av hastighetsgrense for TCP-pakker med ugyldig fin/syn-flaggsett"

   tcp flagg & (fin|syn) == (fin|syn) \

     disk \

     miste \

     kommentere "Slipp TCP-pakker med ugyldig fin/syn-flaggsett"

 

   ## Logg og slipp TCP-pakker med ugyldig syn/første flaggsett

   tcp flagg & (syn|rst) == (syn|rst) \

     grensesats 100/minutt utbrudd 150 pakker \

     loggprefiks “IN – TCP SYN|RST: “ \

     kommentere "Logging av hastighetsgrense for TCP-pakker med ugyldig syn/første flaggsett"

   tcp flagg & (syn|rst) == (syn|rst) \

     disk \

     miste \

     kommentere "Slipp TCP-pakker med ugyldig syn/rst-flaggsett"

 

   ## Logg og slipp ugyldige TCP-flagg

   tcp flagg & (fin|syn|rst|psh|ack|urg) < (fin) \

     grensesats 100/minutt utbrudd 150 pakker \

     loggprefiks «IN – FIN:» \

     kommentere "Logging av hastighetsgrense for ugyldige TCP-flagg (fin|syn|rst|psh|ack|urg) < (fin)"

   tcp flagg & (fin|syn|rst|psh|ack|urg) < (fin) \

     disk \

     miste \

     kommentere "Slipp TCP-pakker med flagg (fin|syn|rst|psh|ack|urg) < (fin)"

 

   ## Logg og slipp ugyldige TCP-flagg

   tcp-flagg & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \

     grensesats 100/minutt utbrudd 150 pakker \

     loggprefiks “IN – FIN|PSH|URG:” \

     kommentere "Logging av hastighetsgrense for ugyldige TCP-flagg (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)"

   tcp-flagg & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \

     disk \

     miste \

     kommentere "Slipp TCP-pakker med flagg (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)"

 

   ## Slipp trafikk med ugyldig tilkoblingstilstand

   ct-tilstand ugyldig \

     grensesats 100/minutt utbrudd 150 pakker \

     log flagger alle prefiks "IN – Ugyldig: " \

     kommentere "Logging av hastighetsgrense for trafikk med ugyldig tilkoblingstilstand"

   ct-tilstand ugyldig \

     disk \

     miste \

     kommentere "Slipp trafikk med ugyldig tilkoblingsstatus"

 

   ## Tillat IPv4 ping/ping-svar, men hastighetsbegrensning til 2000 PPS

   ip protokoll icmp icmp type { echo-reply, echo-request } \

     grensesats 2000/sekund \

     disk \

     aksepterer \

     kommentere "Tillat innkommende IPv4-ekko (ping) begrenset til 2000 PPS"

 

   ## Tillat alle andre innkommende IPv4 ICMP

   ip protokoll icmp \

     disk \

     aksepterer \

     kommentere "Tillat alle andre IPv4 ICMP"

 

   ## Tillat IPv6 ping/ping-svar, men hastighetsbegrensning til 2000 PPS

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

     grensesats 2000/sekund \

     disk \

     aksepterer \

     kommentere "Tillat innkommende IPv6-ekko (ping) begrenset til 2000 PPS"

 

   ## Tillat alle andre innkommende IPv6 ICMP

   meta l4proto { icmpv6 } \

     disk \

     aksepterer \

     kommentere "Tillat alle andre IPv6 ICMP"

 

   ## Tillat innkommende traceroute UDP-porter, men begrens til 500 PPS

   udp dport 33434-33524 \

     grensesats 500/sekund \

     disk \

     aksepterer \

     kommentere "Tillat innkommende UDP traceroute begrenset til 500 PPS"

 

   ## Tillat innkommende SSH

   tcp dport ssh ct state new \

     disk \

     aksepterer \

     kommentere "Tillat innkommende SSH-tilkoblinger"

 

   ## Tillat innkommende HTTP og HTTPS

   tcp dport { http, https } ct state new \

     disk \

     aksepterer \

     kommentere "Tillat innkommende HTTP- og HTTPS-tilkoblinger"

 

   ## Logg all uovertruffen trafikk, men hastighetsbegrens loggingen til maksimalt 60 meldinger/minutt

   ## Standardpolicyen vil bli brukt på uovertruffen trafikk

   grensesats 60/minutt utbrudd 100 pakker \

     loggprefiks "IN – Slipp: " \

     kommentere «Logg all uovertruffen trafikk»

 

   ## Tell den uovertrufne trafikken

   disk \

     kommentere «Tell all uovertruffen trafikk»

 }

 

 # Regler for utdatatrafikk

 kjedeutgang {

   type filter krok utgang prioritet filter; politikk fall

 

   ## Tillat utgående trafikk til loopback-grensesnitt

   oif lo \

     aksepterer \

     kommentere "Tillat all trafikk ut til loopback-grensesnitt"

 

   ## Tillat etablerte og relaterte forbindelser

   ct-stat etablert, relatert \

     disk \

     aksepterer \

     kommentere "Tillat etablerte/relaterte forbindelser"

 

   ## Tillat utgående WireGuard-trafikk før du mister tilkoblinger med dårlig tilstand

   oif $DEV_WAN utp sport $WIREGUARD_PORT \

     disk \

     aksepterer \

     kommentere "Tillat WireGuard utgående trafikk"

 

   ## Slipp trafikk med ugyldig tilkoblingstilstand

   ct-tilstand ugyldig \

     grensesats 100/minutt utbrudd 150 pakker \

     log flagger alle prefiks "UT - Ugyldig: " \

     kommentere "Logging av hastighetsgrense for trafikk med ugyldig tilkoblingstilstand"

   ct-tilstand ugyldig \

     disk \

     miste \

     kommentere "Slipp trafikk med ugyldig tilkoblingsstatus"

 

   ## Tillat alle andre utgående IPv4 ICMP

   ip protokoll icmp \

     disk \

     aksepterer \

     kommentere "Tillat alle IPv4 ICMP-typer"

 

   ## Tillat alle andre utgående IPv6 ICMP

   meta l4proto { icmpv6 } \

     disk \

     aksepterer \

     kommentere "Tillat alle IPv6 ICMP-typer"

 

   ## Tillat utgående traceroute UDP-porter, men begrens til 500 PPS

   udp dport 33434-33524 \

     grensesats 500/sekund \

     disk \

     aksepterer \

     kommentere "Tillat utgående UDP traceroute begrenset til 500 PPS"

 

   ## Tillat utgående HTTP- og HTTPS-tilkoblinger

   tcp dport { http, https } ct state new \

     disk \

     aksepterer \

     kommentere "Tillat utgående HTTP- og HTTPS-tilkoblinger"

 

   ## Tillat utgående SMTP-innsending

   tcp dport innsending ct state new \

     disk \

     aksepterer \

     kommentere "Tillat utgående SMTP-innsending"

 

   ## Tillat utgående DNS-forespørsler

   udp dport 53 \

     disk \

     aksepterer \

     kommentere "Tillat utgående UDP DNS-forespørsler"

   tcp dport 53 \

     disk \

     aksepterer \

     kommentere "Tillat utgående TCP DNS-forespørsler"

 

   ## Tillat utgående NTP-forespørsler

   udp dport 123 \

     disk \

     aksepterer \

     kommentere "Tillat utgående NTP-forespørsler"

 

   ## Logg all uovertruffen trafikk, men hastighetsbegrens loggingen til maksimalt 60 meldinger/minutt

   ## Standardpolicyen vil bli brukt på uovertruffen trafikk

   grensesats 60/minutt utbrudd 100 pakker \

     loggprefiks “UT – Slipp: “ \

     kommentere «Logg all uovertruffen trafikk»

 

   ## Tell den uovertrufne trafikken

   disk \

     kommentere «Tell all uovertruffen trafikk»

 }

 

}

 

# Hoved NAT-filtreringstabell

tabell inet nat {

 

 # Regler for forhåndsruting av NAT-trafikk

 kjede prerouting {

   type nat krok prerouting prioritet dstnat; politikk godta

 }

 

 # Regler for NAT-trafikk etter ruting

 # Denne tabellen behandles før Firezone post-routing-kjeden

 kjede postrouting {

   skriv nat krok postrouting prioritet srcnat – 5; politikk godta

 }

 

}

brukâ € <

Brannmuren bør lagres på det aktuelle stedet for Linux-distribusjonen som kjører. For Debian/Ubuntu er dette /etc/nftables.conf og for RHEL er dette /etc/sysconfig/nftables.conf.

nftables.service må konfigureres for å starte ved oppstart (hvis ikke allerede) satt:

systemctl aktivere nftables.service

Hvis du gjør endringer i brannmurmalen, kan syntaksen valideres ved å kjøre kontrollkommandoen:

nft -f /path/to/nftables.conf -c

Sørg for å validere at brannmuren fungerer som forventet, da visse nftables-funksjoner kanskje ikke er tilgjengelige avhengig av utgivelsen som kjører på serveren.



_______________________________________________________________



telemetri

 

Dette dokumentet presenterer en oversikt over telemetrien Firezone samler inn fra din selvvertsbaserte forekomst og hvordan du deaktiverer den.

Hvorfor Firezone samler inn telemetriâ € <

Brannsone deretter monteres på telemetri for å prioritere veikartet vårt og optimalisere ingeniørressursene vi har for å gjøre Firezone bedre for alle.

Telemetrien vi samler inn har som mål å svare på følgende spørsmål:

  • Hvor mange personer installerer, bruker og slutter å bruke Firezone?
  • Hvilke funksjoner er mest verdifulle, og hvilke ser ingen nytte?
  • Hvilken funksjonalitet trenger mest forbedring?
  • Når noe går i stykker, hvorfor gikk det i stykker, og hvordan kan vi forhindre at det skjer i fremtiden?

Hvordan vi samler inn telemetriâ € <

Det er tre hovedsteder hvor telemetri samles inn i Firezone:

  1. Pakketelemetri. Inkluderer hendelser som installering, avinstallering og oppgradering.
  2. CLI-telemetri fra firezone-ctl-kommandoer.
  3. Produkttelemetri knyttet til nettportalen.

I hver av disse tre sammenhengene fanger vi minimumsmengden data som er nødvendig for å svare på spørsmålene i avsnittet ovenfor.

Admin-e-poster samles bare inn hvis du eksplisitt velger å motta produktoppdateringer. Ellers er personlig identifiserbar informasjon aldri samlet inn.

Firezone lagrer telemetri i en selvdrevet forekomst av PostHog som kjører i en privat Kubernetes-klynge, kun tilgjengelig for Firezone-teamet. Her er et eksempel på en telemetrihendelse som sendes fra din forekomst av Firezone til vår telemetriserver:

{

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

   "tidsstempel": “2022-07-22T18:30:39.748000+00:00”,

   "begivenhet": "fz_http_started",

   «distinct_id»: “1ec2e794-1c3e-43fc-a78f-1db6d1a37f54”,

   "egenskaper": {

       «$geoip_city_name»: "Ashburn",

       «$geoip_continent_code»: "NA",

       «$geoip_continent_name»: "Nord Amerika",

       «$geoip_country_code»: "OSS",

       «$geoip_country_name»: "Forente stater",

       «$geoip_latitude»: 39.0469,

       «$geoip_longitude»: -77.4903,

       «$geoip_postal_code»: "20149",

       «$geoip_subdivision_1_code»: "VA",

       «$geoip_subdivision_1_name»: “Virginia”,

       «$geoip_time_zone»: «Amerika/New_York»,

       «$ip»: "52.200.241.107",

       «$plugins_deferred»: []

       «$plugins_failed»: []

       «$plugins_succeded»: [

           "GeoIP (3)"

       ],

       «distinct_id»: “1zc2e794-1c3e-43fc-a78f-1db6d1a37f54”,

       "fqdn": «awsdemo.firezone.dev»,

       «kernel_version»: "linux 5.13.0",

       "versjon": "0.4.6"

   },

   «elements_chain»: ""

}

Slik deaktiverer du telemetriâ € <

MERKNADER

Firezone-utviklingsteamet deretter monteres på produktanalyse for å gjøre Firezone bedre for alle. Å la telemetri være aktivert er det mest verdifulle bidraget du kan gi til Firezones utvikling. Når det er sagt, forstår vi at noen brukere har høyere krav til personvern eller sikkerhet og foretrekker å deaktivere telemetri helt. Hvis det er deg, fortsett å lese.

Telemetri er aktivert som standard. For å deaktivere produkttelemetri helt, sett følgende konfigurasjonsalternativ til false i /etc/firezone/firezone.rb og kjør sudo firezone-ctl reconfigure for å fange opp endringene.

misligholde["brannsone"]['telemetri']["aktivert"] = falsk

Det vil deaktivere all produkttelemetri fullstendig.