caddy
This commit is contained in:
66
src/markdowns/stories/caddy.md
Executable file
66
src/markdowns/stories/caddy.md
Executable file
@@ -0,0 +1,66 @@
|
||||
# *Caddy* como proxy inverso
|
||||
|
||||
#### 08/04/2023
|
||||
|
||||
Antes de comenzar, ¿Qué es un *proxy inverso*? un proxy inverso es un servidor que se sitúa delante de los servidores web y reenvía las solicitudes del cliente (por ejemplo, el navegador web) a esos servidores web. Hasta ahora yo estaba usando [Nginx Proxy Manager](https://nginxproxymanager.com/) pero en la última actualización me daba bastantes errores en los *logs*. Busqué otro sencillo y que consumiera poco, me decidí por **[Caddy](https://github.com/caddyserver/caddy)**.
|
||||
|
||||

|
||||
|
||||
Lo instalé con *docker-compose*
|
||||
|
||||
```docker-compose.yml
|
||||
version: "3.7"
|
||||
|
||||
services:
|
||||
caddy:
|
||||
image: caddy
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
volumes:
|
||||
- ./Caddyfile:/etc/caddy/Caddyfile:ro
|
||||
- ./data:/data
|
||||
- ./config:/config
|
||||
restart: unless-stopped
|
||||
container_name: caddy
|
||||
```
|
||||
|
||||
Pero antes de crear el contenedor hay que hacer un par de cosas:
|
||||
|
||||
1- Ejecutar un comando para crear una contraseña para las *webs* que quieras con autenticación básica:
|
||||
|
||||
```bash
|
||||
docker exec -it caddy caddy hash-password --plaintext "1234"
|
||||
```
|
||||
|
||||
Esto devuelve un *hash*, anótalo
|
||||
|
||||
2- Crear el archivo **Caddyfile** introduciendo cada uno de los subdominios:
|
||||
|
||||
```Caddyfile
|
||||
(basic-auth) {
|
||||
basicauth / {
|
||||
user hash_anterior
|
||||
}
|
||||
}
|
||||
|
||||
ejemplo.servidor.es {
|
||||
reverse_proxy http://192.168.1.17:81
|
||||
}
|
||||
|
||||
ejemplo_protegido.servidor.es {
|
||||
import basic-auth
|
||||
reverse_proxy http://192.168.1.17:82
|
||||
}
|
||||
```
|
||||
|
||||
Ahora sí, ejecutamos el contenedor:
|
||||
|
||||
```bash
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
Visto en [Caddy. Crear usuario y contraseña. uGeek Blog](https://ugeek.github.io/blog/post/2022-12-23-caddy-crear-usuario-y-contrasena.html), [Proxy Inverso con Caddy. uGeek Blog](https://ugeek.github.io/blog/post/2021-02-19-proxy-inverso-con-caddy.html)
|
||||
|
||||
Salu2
|
||||
Reference in New Issue
Block a user