Firezone
firezone.devOpen-source self-hosted VPN and firewall built on WireGuard®.
- Homepage: firezone.dev
- GitHub: github.com/firezone/firezone
- Web info: web-check.xyz/results/firezone.dev
Firezone Source Code
Author
Description
WireGuard®-based zero trust access platform that supports OIDC authentication, user/group sync, and requires zero firewall configuration.
Homepage
https://www.firezone.devLicense
Apache-2.0
Created
22 Apr 20
Last Updated
30 Mar 24
Latest version
Primary Language
Elixir
Size
105,806 KB
Stars
6,139
Forks
259
Watchers
6,139
Language Usage
Star History
Top Contributors
-
@jamilbk (2234)
-
@AndrewDryga (406)
-
@dependabot[bot] (392)
-
@thomaseizinger (272)
-
@ReactorScram (186)
-
@conectado (142)
-
@bmanifold (56)
-
@princemaple (49)
-
@roop (33)
-
@jasonboukheir (17)
-
@pratikvelani (16)
-
@gongjason (14)
-
@francesca64 (11)
-
@gbe0 (5)
-
@mdp (4)
-
@Intuinewin (3)
-
@chetanverma16 (2)
-
@thermionic (2)
-
@toreanderson (2)
-
@yenba (1)
-
@wwuck (1)
-
@pemontto (1)
-
@lilibobear (1)
-
@leriel (1)
-
@hieultan (1)
-
@sebastianbuechler (1)
-
@numberjs (1)
-
@tyrann0us (1)
-
@RamboRogers (1)
-
@salemgolemugoo (1)
Recent Commits
-
Jamil (29 Mar 24)
chore(connlib): Remove atomicwrites and tokio::fs from apple compile path (#4395) Fixes #4377 Manually verified by running `nm` on the resulting binaries. I'll open another PR to handle #4393 --------- Signed-off-by: Jamil <jamilbk@users.noreply.github.com> Co-authored-by: Reactor Scram <ReactorScram@users.noreply.github.com>
-
Brian Manifold (29 Mar 24)
refactor(portal): Move actor groups to own table in actor show page (#4392) Why: * When viewing an actor in the portal, all of the groups were listed in the top info table. This works for a small number of groups, but becomes difficult to use when an actor is in a large number of groups. This commit moves that information to it's own `live_table` element so that it's easier to parse and can be paginated.
-
Andrew Dryga (29 Mar 24)
fix(portal): Reuse code across sync jobs, only lock one row per job and fetch data asynchronously (#4396)
-
Jamil (29 Mar 24)
chore(portal): Add billing.firezone.dev Stripe checkout domains (#4389) Keeps the user inside the `firezone.dev` domain during checkout. <img width="862" alt="Screenshot 2024-03-28 at 5 08 35 PM" src="https://github.com/firezone/firezone/assets/167144/538c2608-40ca-4e65-be24-18027d9cb4e9">
-
Jamil (29 Mar 24)
fix(connlib): Don't roll log files (#4390) Fixes #4377 Closes #3910 If we decide to implement diagnostic log collection in the future it will be opt-in and use something like Sentry.
-
Andrew Dryga (28 Mar 24)
Create everyone group on account sign up (#4388)
-
Andrew Dryga (28 Mar 24)
fix(portal): Serve static files with digests at root (#4386) Closes #4384
-
Andrew Dryga (28 Mar 24)
fix(porta): Greatly improve HTTP 500 error page (#4382) <img width="1728" alt="Screenshot 2024-03-28 at 15 00 19" src="https://github.com/firezone/firezone/assets/1877644/174c54c2-b958-416f-ad50-9c2af4103bfc">
-
Andrew Dryga (28 Mar 24)
fix(portal): Do not redact userpass virtual state (its a virtual field anyway) (#4370) Closes #4354
-
Andrew Dryga (28 Mar 24)
chore(portal): Sign ref that is sent to the gateway (#4368) Closes #4360
-
Andrew Dryga (28 Mar 24)
fix(portal): Filter group actors by group id (#4369) Closes #4365
-
Jamil (28 Mar 24)
refactor(connlib): Reduce log noisiness for GA (#4381) Fixes #4380 Fixes #4379
-
Jamil (28 Mar 24)
refactor(apple): Use AppleArchive not Zipfiles for log export (#4378) We were using an external library to compress the log folder on Apple, when Apple has native APIs for such things. The external library also doesn't have a good security track record, so this work was prioritized for GA. Default compression level I'm seeing is about 30:1, whereas the previous Zip compression level seemed to be disabled. Fixes #4377 Fixes #4362
-
Reactor Scram (28 Mar 24)
refactor: remove `on_tunnel_ready` callback and switch Windows to `on_set_interface_config` (#4374) Closes #4305 The two callbacks fire within 1 ms of each other so I figure they're basically the same. If it's firing too early I can fix that after GA.
-
Reactor Scram (28 Mar 24)
fix(Windows client): fix "Tauri error" to "Firezone is already running" (#4364) This regressed a while back when I was trying to fix a flaky test. Closes #4363
-
Brian Manifold (28 Mar 24)
style(portal): Update portal UI polish/consistency (#4367) Why: * This commit was not intended to be a sweeping UI change, but rather a quick pass over the portal to make sure things were consistent and also to update small UI elements that were discussed offline.
-
Andrew Dryga (28 Mar 24)
chore(portal): Change terraform configs for release (#4373) refs #4366
-
Andrew Dryga (28 Mar 24)
chore(portal): Update Gateways deploy UI (#4352) Closes #4019 <img width="1728" alt="Screenshot 2024-03-27 at 14 53 30" src="https://github.com/firezone/firezone/assets/1877644/a2b8850e-49b7-4379-9851-5cb5453018d5"> <img width="1728" alt="Screenshot 2024-03-27 at 14 53 32" src="https://github.com/firezone/firezone/assets/1877644/5b35c045-6db8-4522-bba8-794d68eae879">
-
Reactor Scram (28 Mar 24)
test(firezone-tunnel): create a tunnel device in unit tests during CI (#4254) This catches two of the mutants, according to `cargo-mutants`. ~~Unfortunately since `cargo test` runs in one process, it's all-or-nothing for sudo, this will run all unit tests as sudo.~~ (This explanation is not exactly correct, `cargo test` does run _a_ subprocess, but still, there is no way to request sudo or non-sudo runners for specific tests, since it's just an environment variable, and since many tests run in parallel in different threads of the same process.) Here it is passing in Linux: https://github.com/firezone/firezone/actions/runs/8382799272/job/22957555987#step:5:3160 And Windows: https://github.com/firezone/firezone/actions/runs/8382799272/job/22957558003#step:5:1006 ```[tasklist] ### Before merging - [x] Try `#[ignore]` attribute - [x] Fail gracefully if `sudo` isn't available ```
-
Reactor Scram (28 Mar 24)
chore(firezone-tunnel): allow `cargo-mutants` to see Tun impls (#4253) Refs #3776 I think `Tun` could use some automated coverage, so here's the baseline if this PR goes in: For `cargo mutants -p firezone-tunnel -p firezone-gui-client --file connlib/tunnel/src/client.rs --file connlib/tunnel/src/device_channel/tun_windows.rs`, 113 mutants tested, 68 missed For `tun_linux.rs`, 128 tested, 76 missed This is only counting the unit tests, not integration tests or anything, but it's nice if we can cover some I/O stuff like `wintun` in unit tests locally.
-
Thomas Eizinger (28 Mar 24)
chore(phoenix-channel): reset heartbeat on reconnect (#4361) Looking through the logs of https://github.com/firezone/firezone/issues/4348, I noticed that we would instantly reconnect to the portal due to a "missed heartbeat" if the connection was reset for any other error. That happens because the timer within `Heartbeat` was still active and would immediately fire was soon as we are connected. To fix this, we introduce a `reset` method that gets called every time we establish a connection to the portal.
-
Thomas Eizinger (28 Mar 24)
chore: apply lints consistently across workspace (#4357) Motivated by: #4340. I also activated [`clippy::unnnecessary_wraps`](https://rust-lang.github.io/rust-clippy/master/#/unnecessary_wraps) which does create some false-positives for the platform-specific code but is IMO overall a net-positive. With the amount of Rust code and crates increasing, it is good to have tools point out simplifications like these as they are otherwise hard to spot, especially across crate boundaries.
-
Gabi (28 Mar 24)
chore(connlib): unit tests for additional fields in messages (#4337) Fixes #4308
-
Gabi (28 Mar 24)
feat(connlib): react to config updates (#4322) * Move the resource changes to `ClientState` to unit test easier * Add unit tests * Set new config on update from portal * Set parameters as told by portal on re-init Fixes: #2728
-
Andrew Dryga (28 Mar 24)
hotfix: reload dns config before sending it
-
Andrew Dryga (28 Mar 24)
hotfix: slug extraction from not formatted hubspot website url
-
Reactor Scram (27 Mar 24)
chore(phoenix-channel): remove stray `dbg` (#4340) This was introduced in #4296 and I'm guessing it shouldn't be there because we are standardized on `tracing::*` and this goes straight to stderr, can't be filtered out, etc.
-
Reactor Scram (27 Mar 24)
fix(apple client): sign in crash, closes #4350 (#4353)
-
Andrew Dryga (27 Mar 24)
chore(portal): Temporarily hide address description (#4351) Closes #4250
-
Andrew Dryga (27 Mar 24)
chore(portal): Encode client reply pid and socket ref instead of storing it (#4349)
Firezone Website
Website
Redirects
Does not redirect
Security Checks
2 security checks failed (64 passed)
- Robots Noindex
- Empty Page Title
Server Details
- IP Address 76.76.21.93
- Location Walnut, California, United States of America, NA
- ISP Vercel Inc
- ASN AS16509
Associated Countries
-
US
Saftey Score
Website marked as moderately safe
90%
Blacklist Check
www.firezone.dev was found on 0 blacklists
- ThreatLog
- OpenPhish
- PhishTank
- Phishing.Database
- PhishStats
- URLhaus
- RPiList Not Serious
- AntiSocial Blacklist
- PhishFeed
- NABP Not Recommended Sites
- Spam404
- CRDF
- Artists Against 419
- CERT Polska
- PetScams
- Suspicious Hosting IP
- Phishunt
- CoinBlockerLists
- MetaMask EthPhishing
- EtherScamDB
- EtherAddressLookup
- ViriBack C2 Tracker
- Bambenek Consulting
- Badbitcoin
- SecureReload Phishing List
- Fake Website Buster
- TweetFeed
- CryptoScamDB
- StopGunScams
- ThreatFox
- PhishFort
Website Preview
Firezone Reviews
More Self-Hosted Network Security
-
Network-level advertisement and Internet tracker blocking application which acts as a DNS sinkhole. Pi-Hole can significantly speed up your internet, remove ads and block malware. It comes with a nice web interface and a mobile app with monitoring features, it's open source, easy to install and very widely used.
-
Another DNS server for blocking privacy-invasive content at its source. Technitium doesn't require much of a setup, and basically works straight out of the box, it supports a wide range of systems (and can even run as a portable app on Windows). It allows you to do some additional tasks, such as add local DNS addresses and zones with specific DNS records. Compared to Pi-Hole, Technitium is very lightweight, but lacks the deep insights that Pi-Hole provides, and has a significantly smaller community behind it.
-
A hardened, versatile, state-of-the-art open source firewall based on Linux. Its ease of use, high performance and extensibility make it usable for everyone.
-
A simple way to set up a home VPN on any Debian server. Supports OpenVPN and WireGuard with elliptic curve encryption keys up to 512 bit. Supports multiple DNS providers and custom DNS providers - works nicely along-side PiHole.
-
Powerful open source web content filter.
-
Widely used, open source firewall/router.
-
Detect if you have a malware-infected computer on your network, and powerful network analysis framework and monitor.
About the Data: Firezone
API
You can access Firezone's data programmatically via our API.
Simply make a GET
request to:
https://api.awesome-privacy.xyz/networking/self-hosted-network-security/firezone
The REST API is free, no-auth and CORS-enabled. To learn more, view the Swagger Docs or read the API Usage Guide.
About the Data
Beyond the user-submitted YAML you see above, we also augment each listing with additional data dynamically fetched from several sources. To learn more about where the rest of data included in this page comes from, and how it is computed, see the About the Data section of our About page.
Share Firezone
Help your friends compare Self-Hosted Network Security, and pick privacy-respecting software and services.
Share Firezone and Awesome Privacy with your network!