
Fully transparent SSH, HTTPS, Kubernetes, database e bastion/PAM RDP/VNC che non richiede software aggiuntivo lato client
Warpgate è un bastion host intelligente e completamente trasparente per SSH, HTTPS, Kubernetes, MySQL, PostgreSQL, RDP e VNC che non richiede un'app client o un wrapper SSH.
Supportato da:
La documentazione completa è disponibile su warpgate.null.page, inclusi:
|
|
|
Utilizza il sistema di segnalazione delle vulnerabilità di GitHub.
Warpgate è attivamente utilizzato in ambienti enterprise.
Ciò che è pianificato e su cui si sta lavorando è tracciato nella roadmap pubblica.
Warpgate è un servizio che distribuisci sull'host bastion/DMZ, che accetterà connessioni SSH, HTTPS, Kubernetes, MySQL, PostgreSQL, RDP e VNC e fornirà una web UI di amministrazione (opzionale).
Esegui warpgate setup per generare in modo interattivo un file di configurazione, inclusi i binding delle porte. Consulta Per iniziare per i dettagli.
Riceve connessioni con credenziali formattate in modo specifico, autentica l'utente localmente, si connette al target stesso e quindi collega entrambe le parti mentre (opzionalmente) registra la sessione.
Quando ci si connette tramite HTTPS, Warpgate presenta una selezione dei target disponibili e quindi inoltrerà tutto il traffico della sessione al target selezionato. Puoi passare da un target all'altro in qualsiasi momento.
Gestisci gli elenchi di target e utenti e li assegni tra loro tramite la UI di amministrazione, e la cronologia delle sessioni è archiviata in un database SQLite (predefinito: in /var/lib/warpgate).
Puoi anche utilizzare l'interfaccia web di amministrazione per visualizzare l'elenco delle sessioni in diretta, rivedere le registrazioni delle sessioni, i log e altro.
A fine 2025, questo progetto ha iniziato ad accettare contributi assistiti dall'IA. Ai contributori è richiesto di dichiarare l'uso dell'IA. Credo che applicando lo stesso standard di alta qualità a tutte le PR, assistite dall'IA o meno, non sia necessario alcun sacrificio in termini di qualità o sicurezza.
Poiché l'IA è uno spettro tra utenti superficiali e utenti di autocompletamento, credo che essere trasparenti sul suo utilizzo aiuti a stabilire e limitare il posto dell'IA in questo progetto.
Le decisioni architetturali e di sicurezza su questo progetto sono al 100% umane.
cargo install justjust npm installjust npm run buildcargo build (opzionalmente --release)Il binario si trova in target/{debug|release}.
poem-websea-orm + sqlxrusshjust openapi-all.Un ringraziamento va a queste persone meravigliose (chiave emoji):
Questo progetto segue la specifica all-contributors. Ogni tipo di contributo è benvenuto!
| Warpgate | SSH jump host | VPN | Teleport |
|---|
| ✅ Assegnazione precisa 1:1 tra utenti e servizi | (Di solito) accesso completo alla rete dietro il jump host | (Di solito) accesso completo alla rete | ✅ Assegnazione precisa 1:1 tra utenti e servizi |
| ✅ Nessun client personalizzato necessario | Configurazione del jump host necessaria | ✅ Nessun client personalizzato necessario | Client personalizzato richiesto |
| ✅ 2FA inclusa | 🟡 2FA possibile con plugin PAM aggiuntivi | 🟡 Dipende dal provider | ✅ 2FA inclusa |
| ✅ SSO incluso | 🟡 SSO possibile con plugin PAM aggiuntivi | 🟡 Dipende dal provider | A pagamento |
| ✅ Audit a livello di comando | 🟡 Audit a livello di connessione sul jump host, nessun audit sicuro sul target se viene concesso l'accesso root | Nessun audit sicuro sul target se viene concesso l'accesso root | ✅ Audit a livello di comando |
| ✅ Registrazione completa della sessione | Nessuna registrazione sicura possibile sul target se viene concesso l'accesso root | Nessuna registrazione sicura possibile sul target se viene concesso l'accesso root | ✅ Registrazione completa della sessione |
| ✅ Connessioni non interattive | 🟡 Le connessioni non interattive sono possibili se i client supportano nativamente i jump host | ✅ Connessioni non interattive | Le connessioni non interattive richiedono l'uso di un wrapper client SSH o l'esecuzione di un tunnel |
| ✅ Self-hosted, i dati sono tuoi | ✅ Self-hosted, i dati sono tuoi | 🟡 Dipende dal provider | SaaS |
| ✅ Protezione integrata contro la forza bruta | 🟡 Richiede la configurazione di fail2ban | 🟡 Dipende dal provider | ✅ Protezione integrata contro la forza bruta |
![]() Hariharan 💻 |
![]() kamilkrzeminski 💻 |
![]() Lars 💻 |
Hugues Granger 💻 |