6.2 KiB
title: NzbDAV created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, downloads, usenet, webdav, nzb, streaming, python] confidence: high contested: false sources: [https://selfh.st/apps/?tag=downloads, https://github.com/nzbdav/nzbdav]
🗂️ NzbDAV
Serveur WebDAV qui transforme vos NZB Usenet en fichiers streamables : montez votre bibliothèque Usenet comme un disque réseau, et streammez directement dans Jellyfin, Infuse, VLC ou même via Stremio/Symposium, sans attendre la fin du téléchargement complet. L'équivalent Usenet d'un debrid mais 100% self-hosted.
| Métadonnée | Valeur |
|---|---|
| Site web | https://nzbdav.com |
| GitHub | https://github.com/nzbdav/nzbdav |
| License | MIT |
| Langage | Go + WebAssembly (libpar2) |
| Étoiles | 96 ⭐ |
| Dernière MAJ | 2025-12 |
| Catégorie | cat-downloads |
Description
NzbDAV s'attaque à un problème longtemps négligé côté Usenet : pour streammer un film ou une série, il fallait autrefois attendre la fin du téléchargement (paraboles SABnzbd/NZBGet), puis le déplacer dans la bibliothèque Jellyfin. C'est lent, ça bouffe du disque, et ça casse le confort du streaming.
NzbDAV change la donne en exposant un serveur WebDAV standard qui parle à un provider Usenet (via NZBGet ou un backend NNTP direct) et présente chaque NZB comme un fichier virtuel sur un montage WebDAV. Quand Jellyfin/Plex/Infuse demande la lecture, NzbDAV télécharge en arrière-plan, décompresse, vérifie par2, et streame la partie demandée dès qu'elle est prête. Le client croit lire un fichier local, alors qu'il est reconstitué à la volée depuis des segments NZB stockés chez votre provider Usenet.
L'architecture repose sur libpar2 compilée en WebAssembly (Go) — c'est le seul projet Usenet à faire ça, ce qui élimine les libs natives capricieuses. Le binaire est un statique Go multi-plateforme qui tourne sur Linux, macOS, Windows, ARM (Raspberry Pi, Synology), avec un auth WebDAV par username/password (ou SSO via reverse-proxy), une gestion fine du cache (combien de Go conserver en local), un dossier "incomplete" purgé automatiquement, et une API REST pour scripter.
Points forts : révolutionne le streaming Usenet, MIT, multi-plateforme, intégration WebDAV universelle, très léger (1 seul binaire, pas de DB).
Points faibles : projet jeune (~96 ⭐), pas de gestion native de files de téléchargement multiples (1 NZB = 1 stream, pas de "queue"), pas d'UI web étoffée (administration via fichier YAML), bus factor à surveiller.
Installation
Via Docker (recommandé)
# docker-compose.yml
services:
nzbdav:
image: ghcr.io/nzbdav/nzbdav:latest
container_name: nzbdav
restart: unless-stopped
environment:
- NZBDAV__BACKEND=NzbGet
- NZBDAV__NZBGET__URL=http://nzbget:6789
- NZBDAV__NZBGET__USERNAME=nzbget
- NZBDAV__NZBGET__PASSWORD=change...ng
- NZBDAV__CACHE__SIZE=20
- NZBDAV__WEBDAV__USERNAME=alice
- NZBDAV__WEBDAV__PASSWORD=change...ng
volumes:
- ./config:/config
- ./cache:/cache
ports:
- "8080:8080"
Installation manuelle
Télécharger le binaire static depuis GitHub Releases (wget ... && chmod +x nzbdav_linux_amd64). Fichier config.yaml à côté, puis ./nzbdav_linux_amd64. Service systemd trivial.
Configuration
- Backend Usenet : NzbDAV peut soit parler à un NzbGet local (recommandé), soit directement à un serveur NNTP (Eweka, Newshosting, etc.).
- Auth WebDAV : créer un couple user/password par "membre de la famille" — chaque user a son propre dossier.
- Cache : taille max en Go (20 par défaut) — au-delà, purge LRU.
- Monter dans Jellyfin : ajouter une bibliothèque "Films" de type WebDAV HTTP, URL
http://nzbdav:8080/webdav/, user/password. - Monter dans Infuse/NV : idem, URL locale ou publique (
https://nzbdav.example.com/webdav). - Reverse proxy :
nzbdav.example.comvia Caddy/Traefik + HTTPS obligatoire (sinon credentials en clair).
Alternatives
Open source
- NzbGet + Jellyfin "inotify" — workflow classique : download complet → déplacement → scan. Plus lent, plus d'espace disque.
- SABnzbd — le "NzbGet-like" historique, sans WebDAV streaming.
- app-nzbget — le backend Usenet le plus utilisé avec NzbDAV.
- app-sabnzbd — alternative à NzbGet.
- app-jellyfin — le media server qui consomme le WebDAV.
- Stremio + Symposium — approche client-side équivalente pour torrent/usenet (propriétaire côté symposium).
Propriétaires
- Real-Debrid / AllDebrid — services de "debrid" Usenet/torrent fermés, abonnement mensuel, vous donnent accès à leur pool mais stockent votre historique chez eux.
- UsenetServer + Plex "Cloud Sync" — pas de feature équivalente.
- Plex Pass + IPTV — hors sujet, autre écosystème.
Sécurité
- ⚠️ Credentials WebDAV : transmis en clair sur HTTP — HTTPS obligatoire en exposition Internet.
- ⚠️ Reverse proxy + auth : NzbDAV n'a pas de SSO natif, comptez sur Authelia/Authentik en amont.
- ⚠️ Provider Usenet : choisir un fournisseur qui respecte la vie privée (pas de logs, paiement crypto possible : Eweka, Newshosting, BlockNews).
- ⚠️ Cache disque : contient des fragments de fichiers Usenet — chiffrer le volume au repos (LUKS).
- ✅ Pas de DB : rien à sauvegarder hormis
./config. - ✅ Surface d'attaque minimale : binaire Go statique, pas de dépendances runtime.
Ressources
Pages Liées
- cat-downloads — Catégorie parente
- app-nzbget — Backend Usenet typique
- app-sabnzbd — Backend Usenet alternatif
- app-jellyfin — Media server qui consomme le WebDAV
- app-plex — Media server alternatif
- recettes-docker-compose — Templates Docker
- securisation-home-lab — Bonnes pratiques