Caddy¶
Informations et Prérequis:¶
Caddy est un serveur web et reverse proxy entre autre. Nous allons l'utiliser comme un reverse proxy.
- Prérequis: Faire un NAT dans le routeur des ports 443 et 80 sur l'adresse du serveur caddy.
Installation de Caddy sur Debian¶
Pour la version stable:
apt install -y debian-keyring debian-archive-keyring apt-transport-https
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
sudo apt update
sudo apt install caddy
Utilisation de Caddy en reverse proxy¶
Avec systemd on pourra démarrer, redémarrer, stopper le service caddy.service via:
systemctl start caddy.service
La configuration de caddy se trouve dans:
/etc/caddy/Caddyfile
Exemple de configuration pour un proxy¶
musique.chevallier1.fr:443 {
reverse_proxy 192.168.1.250:3000
}
srvjo.fr.to:443 {
reverse_proxy 192.168.1.252:80
}
Il faudra recharger la configuration avec:
systemctl reload caddy.service
Ensuite caddy se chargera de créer automatiquement les certificats avec let's encrypt !
Limiter l'accès à une ressource au réseau local¶
Si il y a besoin de limiter l'accès à ce wiki par exemple au réseau local, la config sera:
wiki.chevallier1.fr:443 {
reverse_proxy 192.168.1.254:3002
@notLocal {
not remote_ip 192.168.1.0/24
}
respond @notLocal "Access denied" 403
}
Rediriger un sous-domaine vers un sous-dossier d'un serveur web¶
Dans le cas où nous avons un sous-domaine à connecter un à sous dossier on configurera comme suit:
Voir le site et la documentation: https://caddyserver.com/docs/install#debian-ubuntu-raspbian