This commit is contained in:
2023-04-11 18:00:38 +02:00
parent 03d53f3ace
commit a3b5867fdc
4 changed files with 90 additions and 0 deletions

66
src/markdowns/stories/caddy.md Executable file
View 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)**.
![](https://myblog.clonbg.es/caddy/caddy.png)
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

View File

@@ -1,5 +1,17 @@
{
"stories": [
{
"id": "caddy",
"categorias": [
"Linux",
"Redes",
"Docker"
],
"imagen": "/caddy.png",
"date": "8 de Abril de 2023",
"title": "<strong>Caddy</strong> como <i>proxy inverso</i>",
"description": "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..."
},
{
"id": "velocidad-usb",
"categorias": [