Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
easywall — Interfaccia web per il firewall nftables su Linux, scritta in Go. L'applicazione si annulla da sola dopo 120 secondi a meno che non la confermi: non puoi rimanere bloccato fuori. Installazione Debian e Docker. | Kitploit
Strumenti/GitHubGitHub/jp1337/easywall
Strumenti DifensiviAudit di ConfigurazioneControllo Accesso ReteSicurezza di ReteConfigurazione Errata
GitHubjp1337/easywall

easywall

Interfaccia web per il firewall nftables su Linux, scritta in Go. L'applicazione si annulla da sola dopo 120 secondi a meno che non la confermi: non puoi rimanere bloccato fuori. Installazione Debian e Docker.

Vedi Repository
6494 giorni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Sito web
Condividi
<p align="center">
  <img src="https://raw.githubusercontent.com/jp1337/easywall/HEAD/web/static/icon.svg" alt="" width="88" height="88">
</p>

<h1 align="center">easywall</h1>

<p align="center"><em>Il tuo firewall. Le tue regole. Nessuna sorpresa.</em></p>

<!-- One badge service, so the set shares a shape, a typeface and a logo
     treatment. The three status badges read from the workflows by name; the
     version, licence and Go badges read from the repository and go.mod, so
     none of them can drift the way a hand-written version number could. -->
<p align="center">
  <a href="https://github.com/jp1337/easywall/actions/workflows/test.yml"><img src="https://img.shields.io/github/actions/workflow/status/jp1337/easywall/test.yml?branch=main&amp;label=tests&amp;logo=github&amp;logoColor=white" alt="Tests"></a>
  <a href="https://github.com/jp1337/easywall/actions/workflows/build.yml"><img src="https://img.shields.io/github/actions/workflow/status/jp1337/easywall/build.yml?branch=main&amp;label=build&amp;logo=github&amp;logoColor=white" alt="Build"></a>
  <a href="https://github.com/jp1337/easywall/actions/workflows/security.yml"><img src="https://img.shields.io/github/actions/workflow/status/jp1337/easywall/security.yml?branch=main&amp;label=security&amp;logo=github&amp;logoColor=white" alt="Security"></a>
  <a href="https://codecov.io/gh/jp1337/easywall"><img src="https://img.shields.io/codecov/c/github/jp1337/easywall?logo=codecov&amp;logoColor=white&amp;label=coverage" alt="Coverage"></a>
</p>

<p align="center">
  <a href="https://github.com/jp1337/easywall/releases/latest"><img src="https://img.shields.io/github/v/release/jp1337/easywall?logo=github&amp;logoColor=white&amp;label=release" alt="Latest release"></a>
  <a href="https://go.dev"><img src="https://img.shields.io/github/go-mod/go-version/jp1337/easywall?logo=go&amp;logoColor=white&amp;label=go" alt="Go version"></a>
  <a href="https://www.gnu.org/licenses/gpl-3.0"><img src="https://img.shields.io/github/license/jp1337/easywall?logo=opensourceinitiative&amp;logoColor=white&amp;label=license&amp;color=blue" alt="GPL-3.0"></a>
  <a href="https://discord.gg/3zJMvChvUA"><img src="https://img.shields.io/badge/discord-join-5865F2?logo=discord&amp;logoColor=white" alt="Discord"></a>
  <a href="https://ko-fi.com/jp1337"><img src="https://img.shields.io/badge/ko--fi-support-13C3FF?logo=kofi&amp;logoColor=white" alt="Support on Ko-fi"></a>
</p>

<p align="center">
  <a href="https://demo.easywall-project.org"><strong>Demo live</strong></a> ·
  <a href="https://easywall-project.org"><strong>Documentazione</strong></a> ·
  <a href="https://github.com/jp1337/easywall/blob/main/CHANGELOG.md">Changelog</a>
</p>

nftables attraverso un'interfaccia web che non può chiuderti fuori: **ogni applicazione si annulla da sola a meno che tu non la confermi.**

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="docs/assets/img/screens/dashboard-dark.png">
  <img src="https://assets.kitploit.com/production/public/readmes/43596/614cbeca6ebf752bf79ddc8d910eb14f46b45390f1cb5b8f53032578aed5fb40.png" alt="La dashboard di easywall: stato del firewall con stato di accettazione, modifiche in sospeso e ultima applicazione; riquadri che contano porte TCP, porte UDP, blocklist, allowlist, regole personalizzate e forwarding; e un elenco delle attività recenti.">
</picture>

## L'idea

Modificare una regola non cambia nulla. Applicarla cambia tutto — per 120 secondi.
Se le nuove regole interrompono la tua connessione non puoi fare clic su Conferma, e *non*
confermare è ciò che ripristina le vecchie regole.

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="docs/assets/diagrams/apply-flow-dark.svg">
  <img src="https://raw.githubusercontent.com/jp1337/easywall/HEAD/docs/assets/diagrams/apply-flow-light.svg" alt="Macchina a stati: la modifica porta a In attesa, l'applicazione porta ad Attivo, la conferma entro la finestra porta a Confermato, e lasciar scadere la finestra porta a Ripristinato, da dove le modifiche in attesa sono ancora disponibili.">
</picture>

## Architettura

Due processi. Quello esposto alla rete non detiene alcun privilegio che valga la pena rubare.

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="docs/assets/diagrams/architecture-dark.svg">
  <img src="https://raw.githubusercontent.com/jp1337/easywall/HEAD/docs/assets/diagrams/architecture-light.svg" alt="Il browser comunica in HTTPS con easywall-web, che viene eseguito senza privilegi; easywall-web comunica JSON tipizzato tramite un socket Unix con easywall-core, che viene eseguito come root e parla netlink con la tabella nftables inet easywall.">
</picture>

Una riscrittura completa dell'originale easywall — Python, Flask, `iptables` via
subprocess — che è stato archiviato nel 2022 dopo una CVE. Entrambe le cause profonde sono state eliminate:
i privilegi risiedono in un processo diverso, e il percorso di applicazione costruisce struct Go
invece di una riga di comando. [Come funziona →](https://easywall-project.org/architecture/)

## Installazione

<picture>
  <source media="(prefers-color-scheme: dark)" srcset="docs/assets/diagrams/install-choice-dark.svg">
  <img src="https://raw.githubusercontent.com/jp1337/easywall/HEAD/docs/assets/diagrams/install-choice-light.svg" alt="Albero decisionale: se vuoi solo dare un'occhiata vai alla modalità demo; Debian o Ubuntu portano al pacchetto .deb; se hai già container in esecuzione vai a Docker; altrimenti compila dai sorgenti.">
</picture>

```bash
# Debian / Ubuntu — amd64 and arm64
ARCH=$(dpkg --print-architecture)
wget https://github.com/jp1337/easywall/releases/latest/download/easywall_$ARCH.deb
sudo dpkg -i easywall_$ARCH.deb && sudo apt-get install -f

# Docker
git clone https://github.com/jp1337/easywall.git && cd easywall && docker compose up -d

# From source — Go 1.27+, nftables
git clone https://github.com/jp1337/easywall.git && cd easywall
make build && sudo make install
sudo systemctl enable --now easywall-core easywall-web
```

Poi apri `https://localhost:12227`. La prima visita
[configura l'account e prepara le prime regole](https://easywall-project.org/installation/first-run/).

## Cosa ottieni

| | |
|---|---|
| **Porte** | TCP e UDP, singole o intervalli, con instradamento brute-force SSH per regola |
| **Blocklist e allowlist** | IPv4, IPv6 e CIDR, valutate prima di qualsiasi regola di porta |
| **Moduli di protezione** | Dodici, cinque attivi per impostazione predefinita — flood, scansioni, bogon, frammenti, broadcast/multicast/anycast |
| **Port forwarding** | Reindirizzamenti NAT con selezione del protocollo |
| **Regole personalizzate** | nftables grezzo, con controllo di sintassi prima dell'applicazione |
| **Esportazione / importazione** | L'intero set di regole in JSON |
| **Registro di controllo** | Cosa è cambiato e quando, un oggetto JSON per riga |
| **Coesistenza con Docker** | Possiede `table inet easywall`, non tocca nient'altro |
| **Inglese, Deutsch, Français** | Selezionabile nell'interfaccia, anche prima dell'accesso. Una lingua può essere parziale: ciò che manca viene mostrato in inglese, e la lacuna viene segnalata invece che nascosta |
| **Chiaro e scuro** | Segue il sistema operativo, con un interruttore manuale; entrambi verificati per il contrasto |

## Costruito con

| | |
|---|---|
| Go 1.27, binario singolo | `go-chi/chi` · `html/template` |
| nftables via `google/nftables` | netlink diretto, nessun subprocess `nft` |
| Argon2id | `golang.org/x/crypto`, salt di 16 byte per password |
| CSRF | `net/http.CrossOriginProtection`, nativo di Go 1.25 |
| Design system | [`DESIGN.md`](https://github.com/jp1337/easywall/blob/main/DESIGN.md) + Tailwind v4 — nessuna libreria UI di terze parti |
| Font | Inter + JetBrains Mono, self-hosted, ~145 KB — funziona in ambienti air-gapped |
| CI | `govulncheck`, `gosec`, CodeQL, `-race`, e una suite di integrazione su un kernel reale |

## Ottenere aiuto

| | |
|---|---|
| Una domanda, o qualcosa che non funziona | [Discord](https://discord.gg/3zJMvChvUA) |
| Un bug, o una funzionalità che desideri | [GitHub issues](https://github.com/jp1337/easywall/issues) |
| Una vulnerabilità di sicurezza | [Security advisory](https://github.com/jp1337/easywall/security/advisories/new) — **non** su Discord, e non come issue pubblica |

## Contribuire

Configurazione, convenzioni di commit e checklist di revisione: [CONTRIBUTING.md](https://github.com/jp1337/easywall/blob/main/CONTRIBUTING.md).
Qualsiasi cosa visiva passa prima da [`DESIGN.md`](https://github.com/jp1337/easywall/blob/main/DESIGN.md).

Problemi di sicurezza: **non** come issue pubblica — usa
[GitHub Security Advisories](https://github.com/jp1337/easywall/security/advisories/new).

## Licenza

GPL-3.0 — vedi [LICENSE](https://github.com/jp1337/easywall/blob/main/LICENSE).
Scarica lo strumento