Aici sunt furnizate instrucțiuni pas cu pas pentru implementarea Hailbytes VPN cu Firezone GUI.
Administrare: Configurarea instanței de server este direct legată de această parte.
Ghiduri de utilizare: documente utile care vă pot învăța cum să utilizați Firezone și să rezolvați problemele tipice. După ce serverul a fost implementat cu succes, consultați această secțiune.
Split Tunneling: Utilizați VPN-ul pentru a trimite trafic numai către anumite intervale de IP.
Lista albă: setați adresa IP statică a unui server VPN pentru a utiliza lista albă.
Tuneluri inverse: creați tuneluri între mai mulți colegi folosind tuneluri inverse.
Suntem încântați să vă ajutăm dacă aveți nevoie de asistență la instalarea, personalizarea sau utilizarea Hailbytes VPN.
Înainte ca utilizatorii să poată produce sau descărca fișiere de configurare a dispozitivului, Firezone poate fi configurat pentru a necesita autentificare. De asemenea, este posibil ca utilizatorii să fie nevoiți să se reautentifice periodic pentru a-și menține conexiunea VPN activă.
Deși metoda implicită de conectare a Firezone este e-mailul local și parola, aceasta poate fi, de asemenea, integrată cu orice furnizor de identitate standardizat OpenID Connect (OIDC). Utilizatorii se pot conecta acum la Firezone folosind acreditările Okta, Google, Azure AD sau furnizorul de identitate privat.
Integrați un furnizor OIDC generic
Parametrii de configurare necesari Firezone pentru a permite SSO folosind un furnizor OIDC sunt prezentați în exemplul de mai jos. La /etc/firezone/firezone.rb, puteți găsi fișierul de configurare. Rulați firezone-ctl reconfigure și firezone-ctl restart pentru a actualiza aplicația și a avea efect asupra modificărilor.
# Acesta este un exemplu de utilizare a Google și Okta ca furnizor de identitate SSO.
# Mai multe configurații OIDC pot fi adăugate la aceeași instanță Firezone.
# Firezone poate dezactiva VPN-ul unui utilizator dacă a fost detectată vreo eroare la încercare
# pentru a-și reîmprospăta access_token-ul. Este verificat că funcționează pentru Google, Okta și
# Azure SSO și este utilizat pentru a deconecta automat VPN-ul unui utilizator dacă este eliminat
# de la furnizorul OIDC. Lăsați această opțiune dezactivată dacă furnizorul dvs. OIDC
# are probleme la reîmprospătarea jetoanelor de acces, deoarece ar putea întrerupe în mod neașteptat a
# sesiune VPN a utilizatorului.
implicit['firezone']['authentication']['disable_vpn_on_oidc_error'] = fals
implicit['firezone']['authentication']['oidc'] = {
Google: {
discovery_document_uri: „https://accounts.google.com/.well-known/openid-configuration”,
client_id: „ ”,
client_secret: „ ”,
redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/google/callback/”,
response_type: „cod”,
domeniul de aplicare: „profil de e-mail openid”,
etichetă: „Google”
},
okta: {
discovery_document_uri: „https:// /.cunoscută/configurație-openid”,
client_id: „ ”,
client_secret: „ ”,
redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/okta/callback/”,
response_type: „cod”,
domeniul de aplicare: „profil de e-mail openid offline_access”,
etichetă: „Okta”
}
}
Următoarele setări de configurare sunt necesare pentru integrare:
Pentru fiecare furnizor OIDC este creată o adresă URL destul de corespunzătoare pentru redirecționarea către adresa URL de conectare a furnizorului configurat. Pentru exemplul de configurare OIDC de mai sus, adresele URL sunt:
Furnizorii avem documentație pentru:
Dacă furnizorul dvs. de identitate are un conector OIDC generic și nu este listat mai sus, vă rugăm să accesați documentația sa pentru informații despre cum să preluați setările de configurare necesare.
Setarea din setări/securitate poate fi modificată pentru a necesita o reautentificare periodică. Aceasta poate fi folosită pentru a impune cerința ca utilizatorii să intre în Firezone în mod regulat pentru a-și continua sesiunea VPN.
Durata sesiunii poate fi configurată să fie între o oră și nouăzeci de zile. Setând acest lucru la Niciodată, puteți activa oricând sesiunile VPN. Acesta este standardul.
Un utilizator trebuie să își încheie sesiunea VPN și să se conecteze la portalul Firezone pentru a re-autentifica o sesiune VPN expirată (URL specificat în timpul implementării).
Vă puteți re-autentifica sesiunea urmând instrucțiunile precise ale clientului găsite aici.
Starea conexiunii VPN
Coloana tabelului Conexiune VPN a paginii Utilizatori afișează starea conexiunii unui utilizator. Acestea sunt stările de conectare:
ACTIVAT – Conexiunea este activată.
DEZACTIVAT – Conexiunea este dezactivată de un administrator sau de o eroare de reîmprospătare OIDC.
EXPIRAT – Conexiunea este dezactivată din cauza expirării autentificării sau un utilizator nu s-a conectat pentru prima dată.
Prin conectorul general OIDC, Firezone activează Single Sign-On (SSO) cu Google Workspace și Cloud Identity. Acest ghid vă va arăta cum să obțineți parametrii de configurare enumerați mai jos, care sunt necesari pentru integrare:
1. Ecranul de configurare OAuth
Dacă este prima dată când creați un nou ID de client OAuth, vi se va cere să configurați un ecran de consimțământ.
*Selectați Intern pentru tipul de utilizator. Acest lucru vă asigură că numai conturile aparținând utilizatorilor din organizația dvs. Google Workspace pot crea configurații pentru dispozitiv. NU selectați Extern decât dacă doriți să permiteți oricui cu un Cont Google valid să creeze configurații pentru dispozitiv.
Pe ecranul de informații despre aplicație:
2. Creați ID-uri de client OAuth
Această secțiune se bazează pe documentația Google despre configurarea OAuth 2.0.
Accesați Google Cloud Console Pagina de acreditări pagina, faceți clic pe + Creați acreditări și selectați ID client OAuth.
Pe ecranul de creare a ID-ului clientului OAuth:
După crearea ID-ului de client OAuth, vi se va da un ID de client și un secret de client. Acestea vor fi utilizate împreună cu URI-ul de redirecționare în pasul următor.
Editati /etc/firezone/firezone.rb pentru a include opțiunile de mai jos:
# Utilizarea Google ca furnizor de identitate SSO
implicit['firezone']['authentication']['oidc'] = {
Google: {
discovery_document_uri: „https://accounts.google.com/.well-known/openid-configuration”,
client_id: „ ”,
client_secret: „ ”,
redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/google/callback/”,
response_type: „cod”,
domeniul de aplicare: „profil de e-mail openid”,
etichetă: „Google”
}
}
Rulați firezone-ctl reconfigure și firezone-ctl restart pentru a actualiza aplicația. Ar trebui să vedeți acum un buton Conectați-vă cu Google la adresa URL Firezone rădăcină.
Firezone folosește conectorul generic OIDC pentru a facilita Single Sign-On (SSO) cu Okta. Acest tutorial vă va arăta cum să obțineți parametrii de configurare enumerați mai jos, care sunt necesari pentru integrare:
Această secțiune a ghidului se bazează pe documentația lui Okta.
În Consola de administrare, accesați Aplicații > Aplicații și faceți clic pe Creare integrare a aplicației. Setați metoda de conectare la OICD – OpenID Connect și Tipul aplicației la Aplicație web.
Configurați aceste setări:
Odată ce setările sunt salvate, vi se va da un ID de client, Client Secret și Okta Domain. Aceste 3 valori vor fi folosite la Pasul 2 pentru a configura Firezone.
Editati /etc/firezone/firezone.rb pentru a include opțiunile de mai jos. Ta discovery_document_url va fi /.configurație-cunoscută/openid atasat la sfarsitul tau okta_domain.
# Utilizarea Okta ca furnizor de identitate SSO
implicit['firezone']['authentication']['oidc'] = {
okta: {
discovery_document_uri: „https:// /.cunoscută/configurație-openid”,
client_id: „ ”,
client_secret: „ ”,
redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/okta/callback/”,
response_type: „cod”,
domeniul de aplicare: „profil de e-mail openid offline_access”,
etichetă: „Okta”
}
}
Rulați firezone-ctl reconfigure și firezone-ctl restart pentru a actualiza aplicația. Acum ar trebui să vedeți un buton Conectați-vă cu Okta la adresa URL Firezone rădăcină.
Utilizatorii care pot accesa aplicația Firezone pot fi restricționați de Okta. Accesați pagina Atribuții din Firezone App Integration din Consola de administrare Okta pentru a realiza acest lucru.
Prin conectorul generic OIDC, Firezone activează Single Sign-On (SSO) cu Azure Active Directory. Acest manual vă va arăta cum să obțineți parametrii de configurare enumerați mai jos, care sunt necesari pentru integrare:
Acest ghid este extras din Documente Azure Active Directory.
Accesați pagina Azure Active Directory a portalului Azure. Alegeți opțiunea de meniu Gestionare, selectați Înregistrare nouă, apoi înregistrați-vă furnizând informațiile de mai jos:
După înregistrare, deschideți vizualizarea de detalii a aplicației și copiați ID aplicație (client).. Aceasta va fi valoarea client_id. Apoi, deschideți meniul de puncte finale pentru a prelua Document de metadate OpenID Connect. Aceasta va fi valoarea discovery_document_uri.
Creați un nou secret de client făcând clic pe opțiunea Certificate și secrete din meniul Gestionare. Copiați secretul clientului; valoarea secretă a clientului va fi aceasta.
În cele din urmă, selectați linkul de permisiuni API din meniul Gestionați, faceți clic Adăugați o permisiuneȘi selectați Microsoft Graph. adăuga e-mail, deschis, acces_offline si profil la permisiunile necesare.
Editati /etc/firezone/firezone.rb pentru a include opțiunile de mai jos:
# Utilizarea Azure Active Directory ca furnizor de identitate SSO
implicit['firezone']['authentication']['oidc'] = {
azur: {
discovery_document_uri: „https://login.microsoftonline.com/ /v2.0/.well-cunoscut/openid-configuration”,
client_id: „ ”,
client_secret: „ ”,
redirect_uri: „https://instance-id.yourfirezone.com/auth/oidc/azure/callback/”,
response_type: „cod”,
domeniul de aplicare: „profil de e-mail openid offline_access”,
etichetă: „Azure”
}
}
Rulați firezone-ctl reconfigure și firezone-ctl restart pentru a actualiza aplicația. Acum ar trebui să vedeți un buton Conectați-vă cu Azure la adresa URL Firezone rădăcină.
Azure AD le permite administratorilor să limiteze accesul la aplicații la un anumit grup de utilizatori din cadrul companiei dvs. Mai multe informații despre cum să faceți acest lucru pot fi găsite în documentația Microsoft.
Chef Omnibus este folosit de Firezone pentru a gestiona sarcini, inclusiv ambalarea lansării, supravegherea proceselor, gestionarea jurnalelor și multe altele.
Codul Ruby alcătuiește fișierul de configurare principal, care se află la /etc/firezone/firezone.rb. Repornirea sudo firezone-ctl reconfigure după efectuarea modificărilor acestui fișier îl face pe Chef să recunoască modificările și să le aplice sistemului de operare curent.
Consultați referința fișierului de configurare pentru o listă completă a variabilelor de configurare și descrierile acestora.
Instanța dvs. Firezone poate fi gestionată prin intermediul firezone-ctl comandă, după cum se arată mai jos. Cele mai multe subcomenzi necesită prefixare cu sudo.
root@demo:~# firezone-ctl
omnibus-ctl: comandă (subcomandă)
Comenzi generale:
curăța
Șterge *toate* datele Firezone și începe de la zero.
create-or-reset-admin
Resetează parola administratorului cu e-mailul specificat în mod implicit['firezone']['admin_email'] sau creează un nou administrator dacă acel e-mail nu există.
ajutor
Tipăriți acest mesaj de ajutor.
reconfigura
Reconfigurați aplicația.
resetare-rețea
Resetează nftables, interfața WireGuard și tabelul de rutare la valorile implicite Firezone.
show-config
Afișați configurația care ar fi generată de reconfigure.
teardown-network
Elimină interfața WireGuard și tabelul firezone nftables.
forta-cert-reinnoire
Forțați reînnoirea certificatului acum, chiar dacă nu a expirat.
stop-cert-reinnoire
Elimină cronjob care reînnoiește certificatele.
dezinstalare
Omorâți toate procesele și dezinstalați supervizorul de proces (datele vor fi păstrate).
versiune
Afișează versiunea curentă a Firezone
Comenzi de management al serviciului:
graţios-ucide
Încercați o oprire grațioasă, apoi SIGKILL întregul grup de procese.
hup
Trimiteți serviciile un HUP.
int
Trimiteți serviciile un INT.
ucide
Trimite servicii un KILL.
dată
Porniți serviciile dacă nu sunt disponibile. Nu le reporniți dacă se opresc.
reîncepe
Opriți serviciile dacă rulează, apoi porniți-le din nou.
lista de servicii
Listați toate serviciile (serviciile activate apar cu *.)
Începe
Porniți serviciile dacă nu sunt disponibile și reporniți-le dacă se opresc.
Starea
Arată starea tuturor serviciilor.
opri
Opriți serviciile și nu le reporniți.
coadă
Urmăriți jurnalele de servicii ale tuturor serviciilor activate.
durată
Trimiteți serviciilor un TERM.
usr1
Trimiteți serviciile un USR1.
usr2
Trimiteți serviciile un USR2.
Toate sesiunile VPN trebuie să fie încheiate înainte de a actualiza Firezone, care necesită și închiderea interfeței de utilizare web. În cazul în care ceva nu merge bine în timpul upgrade-ului, vă recomandăm să rezervați o oră pentru întreținere.
Pentru a îmbunătăți Firezone, luați următoarele acțiuni:
Dacă apar probleme, vă rugăm să ne anunțați până trimiterea unui bilet de asistență.
Există câteva modificări nerespective și modificări de configurare în 0.5.0 care trebuie abordate. Aflați mai multe mai jos.
Nginx nu mai acceptă parametrii portului SSL forțat și non-SSL începând cu versiunea 0.5.0. Deoarece Firezone are nevoie de SSL pentru a funcționa, vă recomandăm să eliminați pachetul de servicii Nginx setând implicit['firezone']['nginx']['enabled'] = false și direcționând proxy-ul invers către aplicația Phoenix pe portul 13000 (în mod implicit ).
0.5.0 introduce suport pentru protocolul ACME pentru reînnoirea automată a certificatelor SSL cu serviciul Nginx inclus. Pentru a permite,
Posibilitatea de a adăuga reguli cu destinații duplicate a dispărut în Firezone 0.5.0. Scriptul nostru de migrare va recunoaște automat aceste situații în timpul unui upgrade la 0.5.0 și va păstra doar regulile a căror destinație include cealaltă regulă. Nu trebuie să faci nimic dacă este în regulă.
În caz contrar, înainte de a face upgrade, vă sfătuim să vă schimbați setul de reguli pentru a scăpa de aceste situații.
Firezone 0.5.0 elimină suportul pentru configurația Okta și Google SSO de stil vechi în favoarea noii configurații, mai flexibile, bazate pe OIDC.
Dacă aveți vreo configurație în cheile implicite['firezone']['authentication']['okta'] sau implicit['firezone']['authentication']['google'], trebuie să le migrați la OIDC configurație bazată pe baza ghidului de mai jos.
Configurație Google OAuth existentă
Eliminați aceste linii care conțin vechile configurații OAuth Google din fișierul dvs. de configurare situat la /etc/firezone/firezone.rb
implicit['firezone']['autentificare']['google']['activat']
implicit['firezone']['authentication']['google']['client_id']
implicit['firezone']['authentication']['google']['client_secret']
implicit['firezone']['authentication']['google']['redirect_uri']
Apoi, configurați Google ca furnizor OIDC urmând procedurile de aici.
(Oferă instrucțiuni pentru link)<<<<<<<<<<<<<<<<<
Configurați OAuth Google existent
Eliminați aceste linii care conțin vechile configurații Okta OAuth din fișierul dvs. de configurare aflat la /etc/firezone/firezone.rb
implicit['firezone']['autentificare']['okta']['activat']
implicit['firezone']['authentication']['okta']['client_id']
implicit['firezone']['authentication']['okta']['client_secret']
Implicit['firezone']['autentificare']['okta']['site']
Apoi, configurați Okta ca furnizor OIDC urmând procedurile de aici.
În funcție de configurația și versiunea dvs. curentă, urmați instrucțiunile de mai jos:
Dacă aveți deja o integrare OIDC:
Pentru unii furnizori OIDC, upgrade-ul la >= 0.3.16 necesită obținerea unui token de reîmprospătare pentru domeniul de acces offline. Făcând acest lucru, se asigură că Firezone se actualizează cu furnizorul de identitate și că conexiunea VPN este oprită după ștergerea unui utilizator. Iterațiile anterioare ale Firezone nu aveau această caracteristică. În unele cazuri, utilizatorii care sunt șterși de la furnizorul dvs. de identitate pot fi în continuare conectați la un VPN.
Este necesar să includeți accesul offline în parametrul domeniului de aplicare al configurației dvs. OIDC pentru furnizorii OIDC care acceptă domeniul de aplicare al accesului offline. Firezone-ctl reconfigure trebuie executată pentru a aplica modificări la fișierul de configurare Firezone, care se află la /etc/firezone/firezone.rb.
Pentru utilizatorii care au fost autentificați de furnizorul dvs. OIDC, veți vedea antetul Conexiuni OIDC în pagina de detalii utilizator a interfeței de utilizare web, dacă Firezone poate prelua cu succes jetonul de reîmprospătare.
Dacă acest lucru nu funcționează, va trebui să ștergeți aplicația OAuth existentă și să repetați pașii de configurare OIDC pentru creați o nouă integrare a aplicației .
Am o integrare OAuth existentă
Înainte de 0.3.11, Firezone folosea furnizori OAuth2 preconfigurați.
Urmează instrucțiunile aici pentru a migra la OIDC.
Nu am integrat un furnizor de identitate
Nici o actiune necesara.
Puteți urma instrucțiunile aici pentru a activa SSO printr-un furnizor OIDC.
În locul său, default['firezone']['external url'] a înlocuit opțiunea de configurare default['firezone']['fqdn'].
Setați acest lucru la adresa URL a portalului dvs. online Firezone, care este accesibil publicului larg. Acesta va fi implicit https:// plus FQDN-ul serverului dvs. dacă este lăsat nedefinit.
Fișierul de configurare se află la /etc/firezone/firezone.rb. Consultați referința fișierului de configurare pentru o listă completă a variabilelor de configurare și descrierile acestora.
Firezone nu mai păstrează cheile private ale dispozitivului pe serverul Firezone începând cu versiunea 0.3.0.
Interfața de utilizare web Firezone nu vă va permite să descărcați din nou sau să vedeți aceste configurații, dar orice dispozitive existente ar trebui să continue să funcționeze așa cum este.
Dacă faceți upgrade de la Firezone 0.1.x, există câteva modificări ale fișierului de configurare care trebuie abordate manual.
Pentru a face modificările necesare fișierului /etc/firezone/firezone.rb, executați comenzile de mai jos ca root.
cp /etc/firezone/firezone.rb /etc/firezone/firezone.rb.bak
sed -i „s/\['activat'\]/\['activat'\]/” /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
reconfigurează firezone-ctl
reporniți firezone-ctl
Verificarea jurnalelor Firezone este un prim pas înțelept pentru orice probleme care pot apărea.
Rulați sudo firezone-ctl tail pentru a vedea jurnalele Firezone.
Majoritatea problemelor de conectivitate cu Firezone sunt cauzate de regulile iptables sau nftables incompatibile. Trebuie să vă asigurați că orice reguli pe care le aveți în vigoare nu intră în conflict cu regulile Firezone.
Asigurați-vă că lanțul FORWARD permite pachete de la clienții dvs. WireGuard către locațiile pe care doriți să le lăsați să treacă prin Firezone dacă conectivitatea dvs. la Internet se deteriorează de fiecare dată când activați tunelul WireGuard.
Acest lucru se poate realiza dacă utilizați ufw, asigurându-vă că politica implicită de rutare este permisă:
ubuntu@fz:~$ sudo ufw default allow routed
Politica implicită de direcționare a fost schimbată în „permite”
(asigurați-vă că vă actualizați regulile în consecință)
A Wow starea unui server Firezone tipic ar putea arăta astfel:
ubuntu@fz:~$ sudo ufw status verbose
Stare: activ
Înregistrare: activată (scăzută)
Implicit: deny (incoming), allow (outgoing), allow (direcționat)
Profiluri noi: săriți
La Acțiune De la
— —— —-
22/tcp PERMITERE PENTRU Oriunde
80/tcp PERMITERE PENTRU Oriunde
443/tcp PERMITERE PENTRU Oriunde
51820/udp PERMITĂ IN Oriunde
22/tcp (v6) PERMITĂȚI oriunde (v6)
80/tcp (v6) PERMITĂȚI oriunde (v6)
443/tcp (v6) PERMITERE Oriunde (v6)
51820/udp (v6) PERMITERE Oriunde (v6)
Vă sfătuim să limitați accesul la interfața web pentru implementări de producție extrem de sensibile și critice, așa cum este explicat mai jos.
Service | Port implicit | Ascultați Adresa | Descriere |
nginx | 80, 443 | toate | Port HTTP(S) public pentru administrarea Firezone și pentru facilitarea autentificării. |
Garda de sârmă | 51820 | toate | Port WireGuard public utilizat pentru sesiunile VPN. (UDP) |
postgresql | 15432 | 127.0.0.1 | Port doar local utilizat pentru serverul Postgresql inclus. |
Fenix | 13000 | 127.0.0.1 | Port doar local utilizat de serverul de aplicații Elixir din amonte. |
Vă sfătuim să vă gândiți să restricționați accesul la interfața de utilizare web a Firezone expusă public (porturile implicite 443/tcp și 80/tcp) și, în schimb, să utilizați tunelul WireGuard pentru a gestiona Firezone pentru implementări de producție și publice, unde un singur administrator va fi responsabil. de creare și distribuire a configurațiilor dispozitivelor către utilizatorii finali.
De exemplu, dacă un administrator a creat o configurație a dispozitivului și a creat un tunel cu adresa locală WireGuard 10.3.2.2, următoarea configurație ufw ar permite administratorului să acceseze interfața web Firezone pe interfața wg-firezone a serverului folosind 10.3.2.1 implicit. adresa tunelului:
root@demo:~# ufw status verbose
Stare: activ
Înregistrare: activată (scăzută)
Implicit: deny (incoming), allow (outgoing), allow (direcționat)
Profiluri noi: săriți
La Acțiune De la
— —— —-
22/tcp PERMITERE PENTRU Oriunde
51820/udp PERMITĂ IN Oriunde
Oriunde PERMITERE ÎN 10.3.2.2
22/tcp (v6) PERMITĂȚI oriunde (v6)
51820/udp (v6) PERMITERE Oriunde (v6)
Asta ar pleca doar 22 / tcp expus pentru acces SSH pentru a gestiona serverul (opțional) și 51820/udp expuse pentru a stabili tuneluri WireGuard.
Firezone include un server Postgresql și potrivire psql utilitar care poate fi folosit din shell-ul local astfel:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c „SQL_STATEMENT”
Acest lucru poate fi util în scopuri de depanare.
Sarcini comune:
Listarea tuturor utilizatorilor:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c „SELECT * FROM users;”
Listarea tuturor dispozitivelor:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c „SELECT * FROM devices;”
Schimbați un rol de utilizator:
Setați rolul la „admin” sau „neprivilegiat”:
/opt/firezone/embedded/bin/psql \
-U firezone \
-d firezone \
-h localhost \
-p 15432 \
-c „UPDATE users SET role = 'admin' WHERE email = 'user@example.com';”
Copiere de rezervă a bazei de date:
În plus, este inclus programul pg dump, care poate fi folosit pentru a face copii de rezervă regulate ale bazei de date. Executați următorul cod pentru a descărca o copie a bazei de date în formatul obișnuit de interogare SQL (înlocuiți /path/to/backup.sql cu locația în care ar trebui creat fișierul SQL):
/opt/firezone/embedded/bin/pg_dump \
-U firezone \
-d firezone \
-h localhost \
-p 15432 > /path/to/backup.sql
După ce Firezone a fost implementat cu succes, trebuie să adăugați utilizatori pentru a le oferi acces la rețeaua dvs. Interfața de utilizare web este utilizată pentru a face acest lucru.
Selectând butonul „Adăugați utilizator” de sub /users, puteți adăuga un utilizator. Vi se va cere să furnizați utilizatorului o adresă de e-mail și o parolă. Pentru a permite accesul automat utilizatorilor din organizația dvs., Firezone poate, de asemenea, să interfațeze și să se sincronizeze cu un furnizor de identitate. Mai multe detalii sunt disponibile în Autentifica. < Adăugați un link pentru autentificare
Vă sfătuim să solicitați utilizatorilor să își creeze propriile configurații de dispozitiv, astfel încât cheia privată să fie vizibilă numai pentru ei. Utilizatorii își pot genera propriile configurații de dispozitiv urmând instrucțiunile de pe Instrucțiuni pentru client pagină.
Toate configurațiile dispozitivelor utilizatorului pot fi create de administratorii Firezone. Pe pagina de profil de utilizator situată la /users, selectați opțiunea „Adăugați dispozitiv” pentru a realiza acest lucru.
[Inserați captură de ecran]
Puteți e-mail utilizatorului fișierul de configurare WireGuard după crearea profilului dispozitivului.
Utilizatorii și dispozitivele sunt conectate. Pentru mai multe detalii despre cum să adăugați un utilizator, consultați Adăugați utilizatori.
Prin utilizarea sistemului netfilter al nucleului, Firezone permite capacitățile de filtrare a ieșirii pentru a specifica pachetele DROP sau ACCEPT. În mod normal, întregul trafic este permis.
IPv4 și IPv6 CIDR și adresele IP sunt acceptate prin Allowlist și, respectiv, Denylist. Puteți alege să definiți o regulă pentru un utilizator atunci când o adăugați, care aplică regula tuturor dispozitivelor utilizatorului respectiv.
Instalați și configurați
Pentru a stabili o conexiune VPN folosind clientul nativ WireGuard, consultați acest ghid.
Clienții oficiali WireGuard localizați aici sunt compatibili cu Firezone:
Vizitați site-ul web oficial WireGuard la https://www.wireguard.com/install/ pentru sistemele OS care nu sunt menționate mai sus.
Administratorul dvs. Firezone sau dvs. puteți genera fișierul de configurare a dispozitivului folosind portalul Firezone.
Accesați adresa URL furnizată de administratorul dvs. Firezone pentru a genera singur un fișier de configurare a dispozitivului. Firma dvs. va avea o adresă URL unică pentru aceasta; în acest caz, este https://instance-id.yourfirezone.com.
Conectați-vă la Firezone Okta SSO
[Inserați captură de ecran]
Importați fișierul.conf în clientul WireGuard deschizându-l. Prin răsucirea comutatorului Activare, puteți începe o sesiune VPN.
[Inserați captură de ecran]
Urmați instrucțiunile de mai jos dacă administratorul de rețea a impus autentificarea recurentă pentru a vă menține conexiunea VPN activă.
Ai nevoie:
Adresa URL a portalului Firezone: Solicitați conexiunea administratorului de rețea.
Administratorul dvs. de rețea ar trebui să poată oferi datele dvs. de conectare și parola. Site-ul Firezone vă va solicita să vă conectați utilizând serviciul de conectare unică pe care îl folosește angajatorul dvs. (cum ar fi Google sau Okta).
[Inserați captură de ecran]
Accesați adresa URL a portalului Firezone și conectați-vă utilizând acreditările pe care le-a furnizat administratorul de rețea. Dacă sunteți deja conectat, faceți clic pe butonul Reautentificare înainte de a vă conecta din nou.
[Inserați captură de ecran]
[Inserați captură de ecran]
Pentru a importa profilul de configurare WireGuard folosind Network Manager CLI pe dispozitivele Linux, urmați aceste instrucțiuni (nmcli).
Dacă profilul are suportul IPv6 activat, încercarea de a importa fișierul de configurare folosind GUI Network Manager poate eșua cu următoarea eroare:
ipv6.method: metoda „auto” nu este acceptată pentru WireGuard
Este necesar să instalați utilitățile spațiului utilizator WireGuard. Acesta va fi un pachet numit wireguard sau wireguard-tools pentru distribuțiile Linux.
Pentru Ubuntu/Debian:
sudo apt install wireguard
Pentru a utiliza Fedora:
sudo dnf install wireguard-tools
Arch Linux:
sudo pacman -S wireguard-tools
Vizitați site-ul web oficial WireGuard la https://www.wireguard.com/install/ pentru distribuțiile care nu sunt menționate mai sus.
Fie administratorul Firezone, fie autogenerarea poate genera fișierul de configurare a dispozitivului folosind portalul Firezone.
Accesați adresa URL furnizată de administratorul dvs. Firezone pentru a genera singur un fișier de configurare a dispozitivului. Firma dvs. va avea o adresă URL unică pentru aceasta; în acest caz, este https://instance-id.yourfirezone.com.
[Inserați captură de ecran]
Importați fișierul de configurare furnizat folosind nmcli:
sudo nmcli tip de import fișier wireguard /path/to/configuration.conf
Numele fișierului de configurare va corespunde conexiunii/interfeței WireGuard. După import, conexiunea poate fi redenumită dacă este necesar:
conexiune nmcli modifică [nume vechi] connection.id [nume nou]
Prin linia de comandă, conectați-vă la VPN după cum urmează:
conexiune nmcli sus [nume VPN]
Pentru a vă deconecta:
conexiune nmcli jos [nume VPN]
Aplicația Network Manager aplicabilă poate fi utilizată și pentru a gestiona conexiunea dacă utilizați o interfață grafică.
Selectând „da” pentru opțiunea de conectare automată, conexiunea VPN poate fi configurată să se conecteze automat:
conexiune nmcli modifica conexiunea [nume VPN]. <<<<<<<<<<<<<<<<<<<<<<<
autoconectare da
Pentru a dezactiva conexiunea automată, setați-o înapoi la nu:
conexiune nmcli modifica conexiunea [nume VPN].
autoconectare nr
Pentru a activa MFA Accesați pagina /contul de utilizator/înregistrați mfa a portalului Firezone. Utilizați aplicația de autentificare pentru a scana codul QR după ce acesta a fost generat, apoi introduceți codul din șase cifre.
Contactați administratorul pentru a reseta informațiile de acces ale contului dvs. dacă pierdeți aplicația de autentificare.
Acest tutorial vă va ghida prin procesul de configurare a funcției de tunel împărțit WireGuard cu Firezone, astfel încât numai traficul către anumite intervale de IP să fie redirecționat prin serverul VPN.
Intervalele IP pentru care clientul va direcționa traficul de rețea sunt stabilite în câmpul IP-uri permise situat pe pagina /settings/default. Doar configurațiile de tunel WireGuard nou create produse de Firezone vor fi afectate de modificările aduse acestui câmp.
[Inserați captură de ecran]
Valoarea implicită este 0.0.0.0/0, ::/0, care direcționează tot traficul de rețea de la client la serverul VPN.
Exemple de valori din acest câmp includ:
0.0.0.0/0, ::/0 – tot traficul de rețea va fi direcționat către serverul VPN.
192.0.2.3/32 – numai traficul către o singură adresă IP va fi direcționat către serverul VPN.
3.5.140.0/22 – numai traficul către IP-uri din intervalul 3.5.140.1 – 3.5.143.254 va fi direcționat către serverul VPN. În acest exemplu, a fost utilizat intervalul CIDR pentru regiunea AWS ap-northeast-2.
Firezone selectează mai întâi interfața de ieșire asociată cu cea mai precisă rută atunci când determină unde să direcționeze un pachet.
Utilizatorii trebuie să regenereze fișierele de configurare și să le adauge la clientul lor nativ WireGuard pentru a actualiza dispozitivele utilizator existente cu noua configurație de tunel divizat.
Pentru instrucțiuni, consultați adăugați dispozitiv. <<<<<<<<<<< Adăugați link
Acest manual va demonstra cum să conectați două dispozitive folosind Firezone ca releu. Un caz tipic de utilizare este acela de a permite unui administrator să acceseze un server, un container sau o mașină care este protejată de un NAT sau firewall.
Această ilustrație arată un scenariu simplu în care Dispozitivele A și B construiesc un tunel.
[Inserați imaginea arhitecturală Firezone]
Începeți prin a crea Dispozitivul A și Dispozitivul B navigând la /users/[user_id]/new_device. În setările pentru fiecare dispozitiv, asigurați-vă că următorii parametri sunt setați la valorile enumerate mai jos. Puteți seta setările dispozitivului când creați configurația dispozitivului (consultați Adăugarea dispozitivelor). Dacă trebuie să actualizați setările pe un dispozitiv existent, puteți face acest lucru generând o nouă configurare a dispozitivului.
Rețineți că toate dispozitivele au o pagină /settings/defaults unde PersistentKeepalive poate fi configurat.
AllowedIPs = 10.3.2.2/32
Acesta este IP-ul sau intervalul de IP-uri ale dispozitivului B
PersistentKeepalive = 25
Dacă dispozitivul se află în spatele unui NAT, acest lucru asigură că dispozitivul este capabil să mențină tunelul în viață și să continue să primească pachete de la interfața WireGuard. De obicei, o valoare de 25 este suficientă, dar poate fi necesar să scădeți această valoare în funcție de mediul dumneavoastră.
AllowedIPs = 10.3.2.3/32
Acesta este IP-ul sau intervalul de IP-uri ale dispozitivului A
PersistentKeepalive = 25
Acest exemplu arată o situație în care Dispozitivul A poate comunica cu Dispozitivele B prin D în ambele direcții. Această configurare poate reprezenta un inginer sau un administrator care accesează numeroase resurse (servere, containere sau mașini) prin diferite rețele.
[Diagrama arhitecturală]<<<<<<<<<<<<<<<<<<<<<<<<
Asigurați-vă că următoarele setări sunt făcute în setările fiecărui dispozitiv la valorile corespunzătoare. Când creați configurația dispozitivului, puteți specifica setările dispozitivului (consultați Adăugarea dispozitivelor). O nouă configurare a dispozitivului poate fi creată dacă setările de pe un dispozitiv existent trebuie actualizate.
IP-uri permise = 10.3.2.3/32, 10.3.2.4/32, 10.3.2.5/32
Acesta este IP-ul dispozitivelor de la B la D. IP-urile dispozitivelor B la D trebuie incluse în orice interval IP pe care alegeți să îl setați.
PersistentKeepalive = 25
Acest lucru garantează că dispozitivul poate menține tunelul și poate continua să primească pachete de la interfața WireGuard chiar dacă este protejat de un NAT. În cele mai multe cazuri, o valoare de 25 este adecvată, totuși, în funcție de mediul înconjurător, ar putea fi necesar să reduceți această cifră.
Pentru a oferi o singură IP statică de ieșire din care să curgă întregul trafic al echipei, Firezone poate fi utilizat ca gateway NAT. Aceste situații implică utilizarea frecventă a acestuia:
Interacțiuni de consultanță: Solicitați clientului dvs. să înscrie o singură adresă IP statică, mai degrabă decât IP-ul unic al dispozitivului fiecărui angajat.
Utilizarea unui proxy sau mascarea IP-ului sursă în scopuri de securitate sau confidențialitate.
Un exemplu simplu de limitare a accesului la o aplicație web auto-găzduită la un singur IP static inclus pe lista albă care rulează Firezone va fi demonstrat în această postare. În această ilustrație, Firezone și resursa protejată se află în diferite zone VPC.
Această soluție este folosită frecvent în locul gestionării unei liste albe de IP pentru numeroși utilizatori finali, ceea ce poate consuma mult timp pe măsură ce lista de acces se extinde.
Obiectivul nostru este de a configura un server Firezone pe o instanță EC2 pentru a redirecționa traficul VPN către resursa restricționată. În acest caz, Firezone servește ca proxy de rețea sau gateway NAT pentru a oferi fiecărui dispozitiv conectat un IP public unic de ieșire.
În acest caz, o instanță EC2 numită tc2.micro are instalată o instanță Firezone. Pentru informații despre implementarea Firezone, accesați Ghidul de implementare. În legătură cu AWS, asigurați-vă că:
Grupul de securitate al instanței Firezone EC2 permite traficul de ieșire către adresa IP a resursei protejate.
Instanța Firezone vine cu un IP elastic. Traficul care este redirecționat prin instanța Firezone către destinații externe va avea aceasta ca adresă IP sursă. Adresa IP în cauză este 52.202.88.54.
[Inserați captură de ecran]<<<<<<<<<<<<<<<<<<<<<<<<<
O aplicație web auto-găzduită servește ca resursă protejată în acest caz. Aplicația web poate fi accesată numai prin solicitări venite de la adresa IP 52.202.88.54. În funcție de resursă, poate fi necesar să se permită traficul de intrare pe diferite porturi și tipuri de trafic. Acest lucru nu este tratat în acest manual.
[Inserați captură de ecran]<<<<<<<<<<<<<<<<<<<<<<<<<
Vă rugăm să spuneți terțului responsabil de resursa protejată că traficul de la IP-ul static definit la Pasul 1 trebuie să fie permis (în acest caz 52.202.88.54).
În mod implicit, tot traficul utilizatorului va trece prin serverul VPN și va veni de la IP-ul static care a fost configurat în Pasul 1 (în acest caz 52.202.88.54). Cu toate acestea, dacă tunelul divizat a fost activat, pot fi necesare setări pentru a vă asigura că IP-ul de destinație al resursei protejate este listat printre IP-urile permise.
Mai jos este prezentată o listă completă a opțiunilor de configurare disponibile în /etc/firezone/firezone.rb.
opțiune | descriere | valoare implicită |
implicit['firezone']['external_url'] | Adresa URL utilizată pentru a accesa portalul web al acestei instanțe Firezone. | „https://#{nod['fqdn'] || nod['nume gazdă']}” |
implicit['firezone']['config_directory'] | Director de nivel superior pentru configurarea Firezone. | /etc/firezone' |
implicit['firezone']['install_directory'] | Directorul de nivel superior în care să instalați Firezone. | /opt/firezone' |
implicit['firezone']['app_directory'] | Director de nivel superior pentru a instala aplicația web Firezone. | „#{node['firezone']['install_directory']}/embedded/service/firezone” |
implicit['firezone']['log_directory'] | Director de nivel superior pentru jurnalele Firezone. | /var/log/firezone' |
implicit['firezone']['var_directory'] | Director de nivel superior pentru fișierele de execuție Firezone. | /var/opt/firezone' |
implicit['firezone']['utilizator'] | Numele utilizatorului Linux neprivilegiat căruia îi vor aparține majoritatea serviciilor și fișierelor. | zona de foc' |
implicit['firezone']['grup'] | Numele grupului Linux căruia îi vor aparține majoritatea serviciilor și fișierelor. | zona de foc' |
implicit['firezone']['admin_email'] | Adresă de e-mail pentru utilizatorul Firezone inițial. | „firezone@localhost” |
implicit['firezone']['max_devices_per_user'] | Numărul maxim de dispozitive pe care le poate avea un utilizator. | 10 |
implicit['firezone']['allow_unprivileged_device_management'] | Permite utilizatorilor care nu sunt administratori să creeze și să șteargă dispozitive. | TRUE |
implicit['firezone']['allow_unprivileged_device_configuration'] | Permite utilizatorilor non-administratori să modifice configurațiile dispozitivului. Când este dezactivat, împiedică utilizatorii neprivilegiati să modifice toate câmpurile dispozitivului, cu excepția numelui și a descrierii. | TRUE |
implicit['firezone']['egress_interface'] | Numele interfeței de unde va ieși traficul tunelizat. Dacă nul, va fi utilizată interfața implicită de rută. | zero |
implicit['firezone']['fips_enabled'] | Activați sau dezactivați modul OpenSSL FIPs. | zero |
implicit['firezone']['logging']['activat'] | Activați sau dezactivați înregistrarea în Firezone. Setați la false pentru a dezactiva complet înregistrarea. | TRUE |
implicit['întreprindere']['nume'] | Nume folosit de cartea de bucate „întreprindere” a Bucătarului. | zona de foc' |
implicit['firezone']['install_path'] | Calea de instalare folosită de cartea de bucate „întreprindere” Chef. Ar trebui să fie setat la același lucru cu directorul_instalare de mai sus. | nod['firezone']['install_directory'] |
implicit['firezone']['sysvinit_id'] | Un identificator folosit în /etc/inittab. Trebuie să fie o secvență unică de 1-4 caractere. | CINA' |
implicit['firezone']['autentificare']['local']['activat'] | Activați sau dezactivați autentificarea locală prin e-mail/parolă. | TRUE |
implicit['firezone']['authentication']['auto_create_oidc_users'] | Creați automat utilizatori care se conectează de la OIDC pentru prima dată. Dezactivați pentru a permite numai utilizatorilor existenți să se conecteze prin OIDC. | TRUE |
implicit['firezone']['authentication']['disable_vpn_on_oidc_error'] | Dezactivați VPN-ul unui utilizator dacă este detectată o eroare în încercarea de a-și reîmprospăta indicativul OIDC. | FALS |
implicit['firezone']['autentificare']['oidc'] | Config OpenID Connect, în formatul de {“provider” => [config…]} – Vezi Documentația OpenIDConnect pentru exemple de configurare. | {} |
implicit['firezone']['nginx']['activat'] | Activați sau dezactivați serverul nginx inclus. | TRUE |
implicit['firezone']['nginx']['ssl_port'] | Port de ascultare HTTPS. | 443 |
implicit['firezone']['nginx']['director'] | Director pentru stocarea configurației gazdei virtuale nginx legate de Firezone. | „#{node['firezone']['var_directory']}/nginx/etc” |
implicit['firezone']['nginx']['log_directory'] | Director pentru a stoca fișierele jurnal nginx legate de Firezone. | „#{node['firezone']['log_directory']}/nginx” |
implicit['firezone']['nginx']['log_rotation']['file_maxbytes'] | Dimensiunea fișierului la care să rotiți fișierele jurnal Nginx. | 104857600 |
implicit['firezone']['nginx']['log_rotation']['num_to_keep'] | Numărul de fișiere jurnal Firezone nginx de păstrat înainte de a le arunca. | 10 |
implicit['firezone']['nginx']['log_x_forwarded_for'] | Dacă să înregistrați antetul Firezone nginx x-forwarded-for. | TRUE |
implicit['firezone']['nginx']['hsts_header']['activat'] | TRUE | |
implicit['firezone']['nginx']['hsts_header']['include_subdomains'] | Activați sau dezactivați includeSubDomains pentru antetul HSTS. | TRUE |
implicit['firezone']['nginx']['hsts_header']['max_age'] | Vârsta maximă pentru antetul HSTS. | 31536000 |
implicit['firezone']['nginx']['redirect_to_canonical'] | Dacă se redirecționează adresele URL către FQDN-ul canonic specificat mai sus | FALS |
implicit['firezone']['nginx']['cache']['activat'] | Activați sau dezactivați memoria cache nginx Firezone. | FALS |
implicit['firezone']['nginx']['cache']['director'] | Director pentru cache-ul Firezone nginx. | „#{node['firezone']['var_directory']}/nginx/cache” |
implicit['firezone']['nginx']['utilizator'] | Utilizator Firezone nginx. | nod['firezone']['utilizator'] |
implicit['firezone']['nginx']['grup'] | Grupul Firezone nginx. | nod['firezone']['grup'] |
implicit['firezone']['nginx']['dir'] | Director de configurare nginx de nivel superior. | nod['firezone']['nginx']['director'] |
implicit['firezone']['nginx']['log_dir'] | Directorul de jurnal nginx de nivel superior. | nod['firezone']['nginx']['log_directory'] |
implicit['firezone']['nginx']['pid'] | Locație pentru fișierul pid nginx. | „#{node['firezone']['nginx']['director']}/nginx.pid” |
implicit['firezone']['nginx']['daemon_disable'] | Dezactivați modul demon nginx, astfel încât să îl putem monitoriza. | TRUE |
implicit['firezone']['nginx']['gzip'] | Activați sau dezactivați compresia nginx gzip. | pe' |
implicit['firezone']['nginx']['gzip_static'] | Activați sau dezactivați compresia nginx gzip pentru fișierele statice. | oprit' |
implicit['firezone']['nginx']['gzip_http_version'] | Versiunea HTTP de utilizat pentru difuzarea fișierelor statice. | 1.0 ' |
implicit['firezone']['nginx']['gzip_comp_level'] | nivelul de compresie nginx gzip. | 2 ' |
implicit['firezone']['nginx']['gzip_proxied'] | Activează sau dezactivează gzipping-ul răspunsurilor pentru cererile proxy, în funcție de cerere și răspuns. | orice' |
implicit['firezone']['nginx']['gzip_vary'] | Activează sau dezactivează inserarea antetului de răspuns „Vary: Accept-Encoding”. | oprit' |
implicit['firezone']['nginx']['gzip_buffers'] | Setează numărul și dimensiunea bufferelor utilizate pentru a comprima un răspuns. Dacă nul, se folosește implicit nginx. | zero |
implicit['firezone']['nginx']['gzip_types'] | Tipuri MIME pentru a activa compresia gzip. | ['text/plain', 'text/css','application/x-javascript', 'text/xml', 'application/xml', 'application/rss+xml', 'application/atom+xml', ' text/javascript', 'application/javascript', 'application/json'] |
implicit['firezone']['nginx']['gzip_min_length'] | Lungimea minimă a fișierului pentru a activa compresia gzip a fișierului. | 1000 |
implicit['firezone']['nginx']['gzip_disable'] | Potrivire agent utilizator pentru a dezactiva compresia gzip pentru. | MSIE [1-6]\.' |
implicit['firezone']['nginx']['keepalive'] | Activează memoria cache pentru conectarea la serverele din amonte. | pe' |
implicit['firezone']['nginx']['keepalive_timeout'] | Timeout în secunde pentru conexiunea keepalive la serverele din amonte. | 65 |
implicit['firezone']['nginx']['worker_processes'] | Numărul de procese de lucru nginx. | nod['cpu'] && node['cpu']['total'] ? nod['cpu']['total']: 1 |
implicit['firezone']['nginx']['worker_connections'] | Numărul maxim de conexiuni simultane care pot fi deschise de un proces de lucru. | 1024 |
implicit['firezone']['nginx']['worker_rlimit_nofile'] | Modifică limita numărului maxim de fișiere deschise pentru procesele de lucru. Folosește nginx implicit dacă nul. | zero |
implicit['firezone']['nginx']['multi_accept'] | Dacă lucrătorii ar trebui să accepte o conexiune la un moment dat sau mai multe. | TRUE |
implicit['firezone']['nginx']['eveniment'] | Specifică metoda de procesare a conexiunii de utilizat în contextul evenimentelor nginx. | epoll' |
implicit['firezone']['nginx']['server_tokens'] | Activează sau dezactivează emiterea versiunii nginx pe paginile de eroare și în câmpul antet de răspuns „Server”. | zero |
implicit['firezone']['nginx']['server_names_hash_bucket_size'] | Setează dimensiunea compartimentului pentru tabelele hash de nume de server. | 64 |
implicit['firezone']['nginx']['sendfile'] | Activează sau dezactivează utilizarea sendfile() al lui nginx. | pe' |
implicit['firezone']['nginx']['access_log_options'] | Setează opțiunile de jurnal de acces nginx. | zero |
implicit['firezone']['nginx']['error_log_options'] | Setează opțiunile de jurnal de erori nginx. | zero |
implicit['firezone']['nginx']['disable_access_log'] | Dezactivează jurnalul de acces nginx. | FALS |
implicit['firezone']['nginx']['types_hash_max_size'] | nginx tipuri hash dimensiune maximă. | 2048 |
implicit['firezone']['nginx']['types_hash_bucket_size'] | dimensiunea găleții hash tipuri nginx. | 64 |
implicit['firezone']['nginx']['proxy_read_timeout'] | timeout de citire proxy nginx. Setați la zero pentru a utiliza implicit nginx. | zero |
implicit['firezone']['nginx']['client_body_buffer_size'] | dimensiunea bufferului corpului clientului nginx. Setați la zero pentru a utiliza implicit nginx. | zero |
implicit['firezone']['nginx']['client_max_body_size'] | Dimensiunea maximă a corpului clientului nginx. | 250 m' |
implicit['firezone']['nginx']['default']['module'] | Specificați module suplimentare nginx. | [] |
implicit['firezone']['nginx']['enable_rate_limiting'] | Activați sau dezactivați limitarea ratei nginx. | TRUE |
implicit['firezone']['nginx']['rate_limiting_zone_name'] | Numele zonei de limitare a ratei Nginx. | zona de foc' |
implicit['firezone']['nginx']['rate_limiting_backoff'] | Rata Nginx limitează retragerea. | 10 m' |
implicit['firezone']['nginx']['rate_limit'] | Limită de rată Nginx. | 10r/s' |
implicit['firezone']['nginx']['ipv6'] | Permiteți lui nginx să asculte solicitările HTTP pentru IPv6 în plus față de IPv4. | TRUE |
implicit['firezone']['postgresql']['activat'] | Activați sau dezactivați pachetul Postgresql. Setați la false și completați opțiunile bazei de date de mai jos pentru a utiliza propria instanță Postgresql. | TRUE |
implicit['firezone']['postgresql']['nume utilizator'] | Nume de utilizator pentru Postgresql. | nod['firezone']['utilizator'] |
implicit['firezone']['postgresql']['data_directory'] | Directorul de date Postgresql. | „#{node['firezone']['var_directory']}/postgresql/13.3/data” |
implicit['firezone']['postgresql']['log_directory'] | Directorul de jurnal Postgresql. | „#{node['firezone']['log_directory']}/postgresql” |
implicit['firezone']['postgresql']['log_rotation']['file_maxbytes'] | Dimensiunea maximă a fișierului jurnal Postgresql înainte de a fi rotit. | 104857600 |
implicit['firezone']['postgresql']['log_rotation']['num_to_keep'] | Numărul de fișiere jurnal Postgresql de păstrat. | 10 |
implicit['firezone']['postgresql']['checkpoint_completion_target'] | Ținta de finalizare a punctului de control Postgresql. | 0.5 |
implicit['firezone']['postgresql']['checkpoint_segments'] | Numărul de segmente de punct de control Postgresql. | 3 |
implicit['firezone']['postgresql']['checkpoint_timeout'] | Timeout pentru punctul de control Postgresql. | 5 minute' |
implicit['firezone']['postgresql']['checkpoint_warning'] | Timpul de avertizare al punctului de control Postgresql în secunde. | anii 30 |
implicit['firezone']['postgresql']['effective_cache_size'] | Dimensiunea efectivă a memoriei cache Postgresql. | 128 MB' |
implicit['firezone']['postgresql']['listen_address'] | Adresă de ascultare Postgresql. | 127.0.0.1 ' |
implicit['firezone']['postgresql']['max_connections'] | Conexiuni Postgresql max. | 350 |
implicit['firezone']['postgresql']['md5_auth_cidr_addresses'] | CIDR-urile Postgresql pentru a permite autentificarea md5. | ['127.0.0.1/32', '::1/128'] |
implicit['firezone']['postgresql']['port'] | Port de ascultare Postgresql. | 15432 |
implicit['firezone']['postgresql']['shared_buffers'] | Dimensiunea bufferelor partajate Postgresql. | „#{(nod['memorie']['total'].to_i / 4) / 1024}MB” |
implicit['firezone']['postgresql']['shmmax'] | Postgresql shmmax în octeți. | 17179869184 |
implicit['firezone']['postgresql']['shmall'] | Postgresql shmall în octeți. | 4194304 |
implicit['firezone']['postgresql']['work_mem'] | Dimensiunea memoriei de lucru Postgresql. | 8 MB' |
implicit['firezone']['bază de date']['utilizator'] | Specifică numele de utilizator pe care îl va folosi Firezone pentru a se conecta la DB. | nod['firezone']['postgresql']['nume utilizator'] |
implicit['firezone']['bază de date']['parolă'] | Dacă utilizați o DB externă, specifică parola pe care Firezone o va folosi pentru a se conecta la DB. | schimba-ma' |
implicit['firezone']['bază de date']['nume'] | Baza de date pe care o va folosi Firezone. Va fi creat dacă nu există. | zona de foc' |
implicit['firezone']['bază de date']['gazdă'] | Gazda bazei de date la care se va conecta Firezone. | node['firezone']['postgresql']['listen_address'] |
implicit['firezone']['bază de date']['port'] | Portul bazei de date la care se va conecta Firezone. | nod['firezone']['postgresql']['port'] |
implicit['firezone']['bază de date']['pool'] | Dimensiunea pool-ului de baze de date va folosi Firezone. | [10, Etc.nprocesoare].max |
implicit['firezone']['bază de date']['ssl'] | Dacă să vă conectați la baza de date prin SSL. | FALS |
implicit['firezone']['bază de date']['ssl_opts'] | {} | |
implicit['firezone']['bază de date']['parametri'] | {} | |
implicit['firezone']['bază de date']['extensii'] | Extensii de baze de date de activat. | { 'plpgsql' => adevărat, 'pg_trgm' => adevărat } |
implicit['firezone']['phoenix']['activat'] | Activați sau dezactivați aplicația web Firezone. | TRUE |
implicit['firezone']['phoenix']['listen_address'] | Adresa de ascultare a aplicației web Firezone. Aceasta va fi adresa de ascultare în amonte pe care nginx o oferă proxy. | 127.0.0.1 ' |
implicit['firezone']['phoenix']['port'] | Port de ascultare a aplicației web Firezone. Acesta va fi portul din amonte pe care nginx îl folosește. | 13000 |
implicit['firezone']['phoenix']['log_directory'] | Directorul de jurnal al aplicației web Firezone. | „#{nod['firezone']['log_directory']}/phoenix” |
implicit['firezone']['phoenix']['log_rotation']['file_maxbytes'] | Dimensiunea fișierului jurnal al aplicației web Firezone. | 104857600 |
implicit['firezone']['phoenix']['log_rotation']['num_to_keep'] | Numărul de fișiere jurnal ale aplicației web Firezone de păstrat. | 10 |
implicit['firezone']['phoenix']['crash_detection']['activat'] | Activați sau dezactivați oprirea aplicației web Firezone atunci când este detectată o blocare. | TRUE |
implicit['firezone']['phoenix']['external_trusted_proxies'] | Lista proxy-urilor inverse de încredere formatate ca o matrice de IP-uri și/sau CIDR. | [] |
implicit['firezone']['phoenix']['private_clients'] | Lista clienților HTTP de rețea privată, formatată într-o matrice de IP-uri și/sau CIDR. | [] |
implicit['firezone']['wireguard']['activat'] | Activați sau dezactivați gestionarea WireGuard combinată. | TRUE |
implicit['firezone']['wireguard']['log_directory'] | Director de jurnal pentru gestionarea WireGuard combinată. | „#{node['firezone']['log_directory']}/wireguard” |
implicit['firezone']['wireguard']['log_rotation']['file_maxbytes'] | Dimensiunea maximă a fișierului jurnal WireGuard. | 104857600 |
implicit['firezone']['wireguard']['log_rotation']['num_to_keep'] | Numărul de fișiere jurnal WireGuard de păstrat. | 10 |
implicit['firezone']['wireguard']['nume_interfață'] | Numele interfeței WireGuard. Modificarea acestui parametru poate cauza o pierdere temporară a conectivității VPN. | wg-firezone' |
implicit['firezone']['wireguard']['port'] | Port de ascultare WireGuard. | 51820 |
implicit['firezone']['wireguard']['mtu'] | MTU de interfață WireGuard pentru acest server și pentru configurațiile dispozitivului. | 1280 |
implicit['firezone']['wireguard']['endpoint'] | WireGuard Endpoint de utilizat pentru generarea configurațiilor dispozitivului. Dacă nul, este implicit adresa IP publică a serverului. | zero |
implicit['firezone']['wireguard']['dns'] | WireGuard DNS de utilizat pentru configurațiile generate de dispozitiv. | 1.1.1.1, 1.0.0.1′ |
implicit['firezone']['wireguard']['allowed_ips'] | WireGuard AllowedIPs de utilizat pentru configurațiile dispozitivelor generate. | 0.0.0.0/0, ::/0′ |
implicit['firezone']['wireguard']['persistent_keepalive'] | Setarea implicită PersistentKeepalive pentru configurațiile dispozitivelor generate. O valoare de 0 dezactivează. | 0 |
implicit['firezone']['wireguard']['ipv4']['activat'] | Activați sau dezactivați IPv4 pentru rețeaua WireGuard. | TRUE |
implicit['firezone']['wireguard']['ipv4']['masquerade'] | Activați sau dezactivați mascarada pentru pachetele care părăsesc tunelul IPv4. | TRUE |
implicit['firezone']['wireguard']['ipv4']['rețea'] | Pool de adrese IPv4 de rețea WireGuard. | 10.3.2.0 / 24 ′ |
implicit['firezone']['wireguard']['ipv4']['adresa'] | Adresa IPv4 a interfeței WireGuard. Trebuie să fie în grupul de adrese WireGuard. | 10.3.2.1 ' |
implicit['firezone']['wireguard']['ipv6']['activat'] | Activați sau dezactivați IPv6 pentru rețeaua WireGuard. | TRUE |
implicit['firezone']['wireguard']['ipv6']['masquerade'] | Activați sau dezactivați mascarada pentru pachetele care părăsesc tunelul IPv6. | TRUE |
implicit['firezone']['wireguard']['ipv6']['rețea'] | Pool de adrese IPv6 de rețea WireGuard. | fd00::3:2:0/120′ |
implicit['firezone']['wireguard']['ipv6']['adresa'] | Adresa IPv6 a interfeței WireGuard. Trebuie să fie în grupul de adrese IPv6. | fd00::3:2:1′ |
implicit['firezone']['runit']['svlogd_bin'] | Runit svlogd bin locație. | „#{node['firezone']['install_directory']}/embedded/bin/svlogd” |
implicit['firezone']['ssl']['director'] | Director SSL pentru stocarea certificatelor generate. | /var/opt/firezone/ssl' |
implicit['firezone']['ssl']['email_address'] | Adresă de e-mail de utilizat pentru certificatele autosemnate și notificările de reînnoire a protocolului ACME. | tu@example.com' |
implicit['firezone']['ssl']['acme']['activat'] | Activați ACME pentru furnizarea automată de certificat SSL. Dezactivați acest lucru pentru a împiedica Nginx să asculte pe portul 80. Vedeți aici pentru mai multe instrucțiuni. | FALS |
implicit['firezone']['ssl']['acme']['server'] | letsencrypt | |
implicit['firezone']['ssl']['acme']['keylength'] | Specificați tipul și lungimea cheii pentru certificatele SSL. Vedea aici | ec-256 |
implicit['firezone']['ssl']['certificat'] | Calea către fișierul de certificat pentru FQDN. Ignoră setarea ACME de mai sus, dacă este specificată. Dacă atât ACME, cât și acesta sunt zero, va fi generat un certificat autosemnat. | zero |
implicit['firezone']['ssl']['certificate_key'] | Calea către fișierul de certificat. | zero |
implicit['firezone']['ssl']['ssl_dhparam'] | nginx ssl dh_param. | zero |
implicit['firezone']['ssl']['country_name'] | Numele țării pentru certificatul autosemnat. | NE' |
implicit['firezone']['ssl']['state_name'] | Numele de stat pentru certificatul autosemnat. | CA ' |
implicit['firezone']['ssl']['locality_name'] | Numele localității pentru certificatul autosemnat. | San Francisco' |
implicit['firezone']['ssl']['company_name'] | Numele companiei certificat autosemnat. | Compania mea' |
implicit['firezone']['ssl']['organizational_unit_name'] | Numele unității organizaționale pentru certificatul autosemnat. | Operațiuni' |
implicit['firezone']['ssl']['cifre'] | Cifruri SSL pentru utilizare de către 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’ |
implicit['firezone']['ssl']['fips_ciphers'] | Cifruri SSL pentru modul FIP. | FIPS@STRENGTH:!aNULL:!eNULL' |
implicit['firezone']['ssl']['protocoale'] | Protocoale TLS de utilizat. | TLSv1 TLSv1.1 TLSv1.2′ |
implicit['firezone']['ssl']['session_cache'] | Cache de sesiune SSL. | shared:SSL:4m' |
implicit['firezone']['ssl']['session_timeout'] | Sesiunea SSL expiră. | 5 m' |
implicit['firezone']['robots_allow'] | roboții nginx permit. | / ' |
implicit['firezone']['robots_disallow'] | roboții nginx nu permit. | zero |
implicit['firezone']['outbound_email']['de la'] | E-mail de ieșire de la adresă. | zero |
implicit['firezone']['outbound_email']['furnizor'] | Furnizor de servicii de e-mail de ieșire. | zero |
implicit['firezone']['outbound_email']['configs'] | Configurații furnizorului de e-mail de ieșire. | vezi omnibus/carti de bucate/firezone/attributes/default.rb |
implicit['firezone']['telemetrie']['activat'] | Activați sau dezactivați telemetria anonimizată a produsului. | TRUE |
implicit['firezone']['connectivity_checks']['activat'] | Activați sau dezactivați serviciul de verificare a conectivității Firezone. | TRUE |
implicit['firezone']['connectivity_checks']['interval'] | Interval între verificările de conectivitate în secunde. | 3_600 |
________________________________________________________________
Aici veți găsi o listă de fișiere și directoare legate de o instalare tipică Firezone. Acestea se pot schimba în funcție de modificările aduse fișierului de configurare.
cale | descriere |
/var/opt/firezone | Director de nivel superior care conține date și configurație generată pentru serviciile incluse Firezone. |
/opt/firezone | Director de nivel superior care conține biblioteci construite, binare și fișiere de rulare necesare Firezone. |
/usr/bin/firezone-ctl | utilitar firezone-ctl pentru gestionarea instalării Firezone. |
/etc/systemd/system/firezone-runsvdir-start.service | fișierul unitar systemd pentru pornirea procesului de supraveghere Firezone runsvdir. |
/etc/firezone | Fișiere de configurare Firezone. |
__________________________________________________________
Această pagină a fost goală în documente
_____________________________________________________________
Următorul șablon de firewall nftables poate fi utilizat pentru a securiza serverul care rulează Firezone. Șablonul face unele presupuneri; poate fi necesar să ajustați regulile pentru a se potrivi cazului dvs. de utilizare:
Firezone își configurează propriile reguli nftables pentru a permite/respinge traficul către destinațiile configurate în interfața web și pentru a gestiona NAT de ieșire pentru traficul clienților.
Aplicarea șablonului de firewall de mai jos pe un server care rulează deja (nu la momentul pornirii) va duce la ștergerea regulilor Firezone. Acest lucru poate avea implicații de securitate.
Pentru a rezolva acest lucru, reporniți serviciul Phoenix:
firezone-ctl reporniți Phoenix
#!/usr/sbin/nft -f
## Ștergeți/ștergeți toate regulile existente
set de reguli de culoare
############################### VARIABILE ################# ###############
## Numele interfeței Internet/WAN
definiți DEV_WAN = eth0
## Numele interfeței WireGuard
definiți DEV_WIREGUARD = wg-firezone
## Port de ascultare WireGuard
definiți WIREGUARD_PORT = 51820
############################# VARIABILELE SFÂRȘIT ################# ############
# Tabelul principal de filtrare a familiei inet
tabel inet filter {
# Reguli pentru traficul redirecționat
# Acest lanț este procesat înaintea lanțului înainte Firezone
lanț înainte {
tip filtru cârlig înainte filtru prioritar – 5; acceptați politica
}
# Reguli pentru traficul de intrare
intrare în lanț {
tip filtru cârlig intrare filtru prioritar; scăderea politicii
## Permite traficul de intrare către interfața de loopback
daca asa \
Accept \
comentariu „Permiteți tot traficul din interfața de loopback”
## Permite stabilirea și conexiunile aferente
stare ct stabilită, legată de \
Accept \
comentariu „Permiteți conexiuni stabilite/conexe”
## Permiteți traficul WireGuard de intrare
dacă este $DEV_WAN udp dport $WIREGUARD_PORT \
tejghea \
Accept \
comentariu „Permiteți traficul WireGuard de intrare”
## Înregistrați și plasați noi pachete TCP non-SYN
steaguri tcp != stare syn ct nou \
rata limită 100/minut explozie 150 pachete \
prefix de jurnal „IN – Nou !SYN: „ \
comentariu „Înregistrare limită de viteză pentru conexiunile noi care nu au setat steag-ul SYN TCP”
steaguri tcp != stare syn ct nou \
tejghea \
cădere brusca \
comentariu „Renunțați la conexiuni noi care nu au setat steag-ul SYN TCP”
## Înregistrați și plasați pachetele TCP cu un semnalizator fin/syn nevalid
steaguri tcp & (fin|syn) == (fin|syn) \
rata limită 100/minut explozie 150 pachete \
prefix de jurnal „IN – TCP FIN|SIN: „ \
comentariu „Înregistrare limită de viteză pentru pachetele TCP cu steag fin/syn nevalid setat”
steaguri tcp & (fin|syn) == (fin|syn) \
tejghea \
cădere brusca \
comentariu „Renunțați la pachetele TCP cu un semnalizare fin/syn nevalidă”
## Înregistrați și plasați pachetele TCP cu semnalul syn/rst nevalid
steaguri tcp & (syn|rst) == (syn|rst) \
rata limită 100/minut explozie 150 pachete \
prefix de jurnal „IN – TCP SYN|RST:” \
comentariu „Înregistrare limită de viteză pentru pachetele TCP cu semnalizare syn/rst nevalidă”
steaguri tcp & (syn|rst) == (syn|rst) \
tejghea \
cădere brusca \
comentariu „Renunțați la pachetele TCP cu semnalul syn/rst invalid setat”
## Înregistrează-te și aruncă steaguri TCP nevalide
steaguri tcp & (fin|syn|rst|psh|ack|urg) < (fin) \
rata limită 100/minut explozie 150 pachete \
prefix de jurnal „IN – FIN:” \
comentariu „Înregistrare limita ratei pentru semnalizatoarele TCP nevalide (fin|syn|rst|psh|ack|urg) < (fin)”
steaguri tcp & (fin|syn|rst|psh|ack|urg) < (fin) \
tejghea \
cădere brusca \
comentariu „Aruncă pachetele TCP cu steaguri (fin|syn|rst|psh|ack|urg) < (fin)”
## Înregistrează-te și aruncă steaguri TCP nevalide
steaguri tcp & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
rata limită 100/minut explozie 150 pachete \
prefix de jurnal „IN – FIN|PSH|URG:” \
comentariu „Înregistrare limita ratei pentru semnalizatoarele TCP nevalide (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)”
steaguri tcp & (fin|syn|rst|psh|ack|urg) == (fin|psh|urg) \
tejghea \
cădere brusca \
comentariu „Aruncă pachetele TCP cu steaguri (fin|syn|rst|psh|ack|urg) == (fin|psh|urg)”
## Eliminați traficul cu starea de conexiune nevalidă
stare ct nevalidă \
rata limită 100/minut explozie 150 pachete \
jurnalul semnalează toate prefixele „IN – Invalid: „ \
comentariu „Înregistrare pentru limita de rată pentru trafic cu stare de conexiune nevalidă”
stare ct nevalidă \
tejghea \
cădere brusca \
comentariu „Renunțați la trafic cu starea de conexiune nevalidă”
## Permite răspunsuri ping/ping IPv4, dar limitează rata la 2000 PPS
ip protocol icmp tip icmp { ecou-reply, echo-request } \
rata limită 2000/al doilea \
tejghea \
Accept \
comentariu „Permite ecou IPv4 de intrare (ping) limitat la 2000 PPS”
## Permite toate celelalte IPv4 ICMP de intrare
ip protocol icmp \
tejghea \
Accept \
comentariu „Permiteți toate celelalte IPv4 ICMP”
## Permite răspunsuri ping/ping IPv6, dar limitează rata la 2000 PPS
tip icmpv6 { ecou-reply, ecou-request } \
rata limită 2000/al doilea \
tejghea \
Accept \
comentariu „Permite ecou IPv6 de intrare (ping) limitat la 2000 PPS”
## Permite toate celelalte IPv6 ICMP de intrare
meta l4proto { icmpv6 } \
tejghea \
Accept \
comentariu „Permiteți toate celelalte IPv6 ICMP”
## Permiteți porturi UDP traceroute de intrare, dar limitați la 500 PPS
udp dport 33434-33524 \
rata limită 500/al doilea \
tejghea \
Accept \
comentariu „Permiteți traseul UDP de intrare limitat la 500 PPS”
## Permite SSH de intrare
tcp dport ssh stare ct nou \
tejghea \
Accept \
comentariu „Permiteți conexiuni SSH de intrare”
## Permite HTTP de intrare și HTTPS
tcp dport { http, https } stare ct nou \
tejghea \
Accept \
comentariu „Permiteți conexiunile HTTP și HTTPS de intrare”
## Înregistrați orice trafic fără egal, dar limitați rata de înregistrare la maximum 60 de mesaje/minut
## Politica implicită va fi aplicată traficului nepotrivit
rata limită 60/minut explozie 100 pachete \
prefix de jurnal „IN – Drop:” \
comentariu „Înregistrați orice trafic fără egal”
## Numărați traficul de neegalat
tejghea \
comentariu „Numărați orice trafic de neegalat”
}
# Reguli pentru traficul de ieșire
ieșire în lanț {
tip filtru cârlig ieșire filtru prioritar; scăderea politicii
## Permite trafic de ieșire către interfața de loopback
oif lo \
Accept \
comentariu „Permiteți tot traficul către interfața de loopback”
## Permite stabilirea și conexiunile aferente
stare ct stabilită, legată de \
tejghea \
Accept \
comentariu „Permiteți conexiuni stabilite/conexe”
## Permiteți traficul WireGuard de ieșire înainte de a întrerupe conexiunile cu stare proastă
oif $DEV_WAN sport udp $WIREGUARD_PORT \
tejghea \
Accept \
comentariu „Permiteți traficul de ieșire WireGuard”
## Eliminați traficul cu starea de conexiune nevalidă
stare ct nevalidă \
rata limită 100/minut explozie 150 pachete \
jurnalul semnalează toate prefixele „OUT – Invalid: „ \
comentariu „Înregistrare pentru limita de rată pentru trafic cu stare de conexiune nevalidă”
stare ct nevalidă \
tejghea \
cădere brusca \
comentariu „Renunțați la trafic cu starea de conexiune nevalidă”
## Permite toate celelalte ICMP IPv4 de ieșire
ip protocol icmp \
tejghea \
Accept \
comentariu „Permiteți toate tipurile ICMP IPv4”
## Permite toate celelalte ICMP IPv6 de ieșire
meta l4proto { icmpv6 } \
tejghea \
Accept \
comentariu „Permiteți toate tipurile ICMP IPv6”
## Permiteți porturi UDP de ieșire traceroute, dar limitați la 500 PPS
udp dport 33434-33524 \
rata limită 500/al doilea \
tejghea \
Accept \
comentariu „Permiteți traseul UDP de ieșire limitat la 500 PPS”
## Permite conexiuni HTTP și HTTPS de ieșire
tcp dport { http, https } stare ct nou \
tejghea \
Accept \
comentariu „Permiteți conexiuni HTTP și HTTPS de ieșire”
## Permite trimiterea SMTP de ieșire
tcp dport trimitere ct stare nou \
tejghea \
Accept \
comentariu „Permiteți trimiterea SMTP de ieșire”
## Permite solicitări DNS de ieșire
udp dport 53 \
tejghea \
Accept \
comentariu „Permiteți solicitările DNS UDP de ieșire”
tcp dport 53 \
tejghea \
Accept \
comentariu „Permite solicitări TCP DNS de ieșire”
## Permite solicitări NTP de ieșire
udp dport 123 \
tejghea \
Accept \
comentariu „Permiteți cereri NTP de ieșire”
## Înregistrați orice trafic fără egal, dar limitați rata de înregistrare la maximum 60 de mesaje/minut
## Politica implicită va fi aplicată traficului nepotrivit
rata limită 60/minut explozie 100 pachete \
prefix de jurnal „OUT – Drop:” \
comentariu „Înregistrați orice trafic fără egal”
## Numărați traficul de neegalat
tejghea \
comentariu „Numărați orice trafic de neegalat”
}
}
# Tabelul principal de filtrare NAT
table inet nat {
# Reguli pentru pre-rutarea traficului NAT
preroutare în lanț {
tip nat hook prerouting priority dstnat; acceptați politica
}
# Reguli pentru traficul NAT post-rutare
# Acest tabel este procesat înaintea lanțului de post-routare Firezone
postrouting în lanț {
tip nat hook postrouting priority srcnat – 5; acceptați politica
}
}
Firewall-ul ar trebui să fie stocat în locația relevantă pentru distribuția Linux care rulează. Pentru Debian/Ubuntu acesta este /etc/nftables.conf și pentru RHEL este /etc/sysconfig/nftables.conf.
nftables.service va trebui configurat pentru a porni la pornire (dacă nu este deja) setat:
systemctl enable nftables.service
Dacă faceți modificări la șablonul firewall, sintaxa poate fi validată prin rularea comenzii de verificare:
nft -f /path/to/nftables.conf -c
Asigurați-vă că validați firewall-ul funcționează așa cum vă așteptați, deoarece anumite caracteristici nftables pot să nu fie disponibile, în funcție de versiunea care rulează pe server.
_______________________________________________________________
Acest document prezintă o prezentare generală a telemetriei pe care Firezone o colectează de la instanța dvs. auto-găzduită și cum să o dezactivați.
Zona de incendiu se bazează pe telemetrie pentru a ne prioritiza foaia de parcurs și a optimiza resursele de inginerie pe care le avem pentru a face Firezone mai bun pentru toată lumea.
Telemetria pe care o colectăm își propune să răspundă la următoarele întrebări:
Există trei locuri principale în care telemetria este colectată în Firezone:
În fiecare dintre aceste trei contexte, surprindem cantitatea minimă de date necesară pentru a răspunde la întrebările din secțiunea de mai sus.
E-mailurile administratorilor sunt colectate numai dacă vă înscrieți în mod explicit pentru actualizările produselor. În caz contrar, informațiile de identificare personală sunt nu colectate.
Firezone stochează telemetria într-o instanță auto-găzduită de PostHog care rulează într-un cluster Kubernetes privat, accesibil doar de echipa Firezone. Iată un exemplu de eveniment de telemetrie care este trimis de la instanța dvs. de Firezone către serverul nostru de telemetrie:
{
„id”: “0182272d-0b88-0000-d419-7b9a413713f1”,
"timestamp-ul": “2022-07-22T18:30:39.748000+00:00”,
"eveniment": „fz_http_started”,
„distinct_id”: “1ec2e794-1c3e-43fc-a78f-1db6d1a37f54”,
„proprietăți”:{
„$geoip_city_name”: „Ashburn”,
„$geoip_continent_code”: "N / A",
„$geoip_continent_name”: "America de Nord",
„$geoip_country_code”: "S.U.A",
„$geoip_country_name”: "Statele Unite",
„$geoip_latitude”: 39.0469,
„$geoip_longitudine”: -77.4903,
„$geoip_postal_code”: "20149",
„$geoip_subdivision_1_code”: „VA”,
„$geoip_subdivision_1_name”: „Virginia”,
„$geoip_time_zone”: „America/New_York”,
„$ip”: "52.200.241.107",
„$plugins_deferred”:[],
„$plugins_failed”:[],
„$plugins_succeeded”: [
„GeoIP (3)”
],
„distinct_id”: “1zc2e794-1c3e-43fc-a78f-1db6d1a37f54”,
„fqdn”: „awsdemo.firezone.dev”,
„kernel_version”: „Linux 5.13.0”,
"versiune": "0.4.6"
},
„lanțul_elementelor”: ""
}
NOTĂ
Echipa de dezvoltare Firezone se bazează pe analiza produselor pentru a face Firezone mai bun pentru toată lumea. Lăsarea telemetriei activată este cea mai valoroasă contribuție pe care o puteți aduce la dezvoltarea Firezone. Acestea fiind spuse, înțelegem că unii utilizatori au cerințe mai mari de confidențialitate sau securitate și ar prefera să dezactiveze complet telemetria. Dacă ești tu, continuă să citești.
Telemetria este activată în mod implicit. Pentru a dezactiva complet telemetria produsului, setați următoarea opțiune de configurare la false în /etc/firezone/firezone.rb și rulați sudo firezone-ctl reconfigure pentru a prelua modificările.
Mod implicit["firezone"]['telemetrie']['activat'] = fals
Acest lucru va dezactiva complet telemetria produsului.
Hailbytes
9511 Queens Guard Ct.
Laurel, MD 20723
Telefon: (732) 771-9995
E-mail: info@hailbytes.com
Primiți cele mai recente știri privind securitatea cibernetică direct în căsuța dvs. de e-mail.