Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
d9ce42c
feat: added sveltia cms and new makefile
fuzilogik2019 Jan 7, 2026
f28a28f
chore: enhance homepage with new header and recent tutorials section …
gonferreyra Jan 8, 2026
23fab7e
feat: started tutorials and changelog implementations
fuzilogik2019 Jan 8, 2026
2ed88a9
chore: some bugfixes to tutorials page filters and test changelog
fuzilogik2019 Jan 8, 2026
0332185
chore: more bugfixes to tutorial section
fuzilogik2019 Jan 8, 2026
1f5234d
chore: more bugfixes
fuzilogik2019 Jan 8, 2026
4218896
chore: removed null values from tutorials
fuzilogik2019 Jan 8, 2026
1519f42
chore: added script to generate tutorial index
fuzilogik2019 Jan 9, 2026
d301051
feat: standarized cards for tutorials
fuzilogik2019 Jan 9, 2026
adb752f
chore: more tutorials cards fixes
fuzilogik2019 Jan 9, 2026
41c781b
feat: update homepage header with translations and separate releases …
gonferreyra Jan 9, 2026
1c5e068
chore: added Spanish translations for changelogs and fixed minor issu…
gonferreyra Jan 9, 2026
4535ba6
Merge branch 'develop' of github.com:sleakops/docs into chore/add-not…
gonferreyra Jan 12, 2026
b0e17d1
chore: add notion tutorials
gonferreyra Jan 12, 2026
33d36a2
fix: coderabbit comments
gonferreyra Jan 12, 2026
16421db
chore: add django-celery tutorial
gonferreyra Jan 12, 2026
c511dfd
fix: incorrect data
gonferreyra Jan 12, 2026
393a23d
fix: small coderabits comments
gonferreyra Jan 13, 2026
2f44c6f
fix: table format
gonferreyra Jan 13, 2026
24f4fff
Merge branch 'develop' of github.com:sleakops/docs into chore/add-not…
fuzilogik2019 Jan 16, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
105 changes: 105 additions & 0 deletions i18n/es/docusaurus-plugin-content-docs-tutorials/config-aws-waf.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,105 @@
---
sidebar_label: "Configurar AWS WAF"
sidebar_position: 3
title: "Configurar AWS WAF"
description: "Aprende cómo configurar AWS WAF para proteger tu Application Load Balancer de solicitudes no deseadas"
tags:
- aws
- waf
- security
- alb
- firewall
- web-protection
- load-balancer
image: /img/tutorial-img.png
---

import Zoom from "react-medium-image-zoom";
import "react-medium-image-zoom/dist/styles.css";

Aprende cómo configurar AWS WAF (Web Application Firewall) para proteger tu Application Load Balancer (ALB) de solicitudes no deseadas, como las que provienen de bots o ataques maliciosos. AWS WAF te permite crear reglas personalizadas para filtrar tráfico HTTP(S) y solo permitir solicitudes legítimas.

## Prerrequisitos

- Una cuenta de AWS con acceso a WAF y Application Load Balancer
- Un Application Load Balancer ya configurado en tu cuenta de AWS
- Comprensión básica de la navegación en la consola de AWS

## Costo estimado

El costo de AWS WAF depende de:

1. El número de reglas activas
2. El número de solicitudes procesadas por el WAF

### Desglose de costos:

| **Componente** | **Costo** |
| ----------------------- | ----------------------------------- |
| **Costo por regla** | $1 USD/mes por cada regla |
| **Costo por WebACL** | $5 USD/mes por cada WebACL |
| **Costo por solicitud** | $0.60 USD por millón de solicitudes |

### Ejemplo de cálculo de costo:

Si tienes 5 reglas activas y procesas 10 millones de solicitudes al mes, el costo sería:

- WebACL: $5 USD
- Reglas: $5 USD (5 reglas × $1 USD)
- Solicitudes: $6 USD (10 millones × $0.60 USD)

**Costo total aproximado**: $16 USD/mes

---

## Paso 1: Crear un Web ACL

1. Ve a la consola de AWS y busca **WAF**
2. Haz clic en **Create web ACL**
3. Ingresa el nombre de tu Web ACL (por ejemplo, `waf-alb-prod`)
4. Elige la región donde está tu ALB
5. Selecciona **Regional** si tu ALB está en una región específica (usualmente es así), o **CloudFront** si estás usando una distribución de CloudFront
6. En la sección **Associated AWS resources (opcional)**, selecciona tu **Application Load Balancer** para que todo el tráfico pase por el WAF
7. Haz clic en **Next**

## Paso 2: Configurar reglas básicas

1. Haz clic en **Add rules and rule groups**
2. Selecciona **AWS Managed Rules** y elige algunas de las siguientes reglas como ejemplo:

| **Regla** | **Descripción** |
| ----------------------------------------- | ------------------------------------------------------------------------------------------------------------- |
| **AWSManagedRulesCommonRuleSet** | Para protección básica contra vulnerabilidades web comunes |
| **AWSManagedRulesBotControl** | Para bloquear bots conocidos y tráfico automatizado |
| **AWSManagedRulesAnonymousIPList** | Para bloquear direcciones IP asociadas con servicios que ocultan la identidad del usuario (VPN, proxies, Tor) |
| **AWSManagedRulesAmazonIpReputationList** | Para bloquear tráfico desde IPs conocidas por comportamiento malicioso |
| **AWSManagedRulesSQLiRuleSet** | Para proteger contra ataques de inyección SQL |

Estos son solo ejemplos, ya que existen muchas otras opciones según la naturaleza de tu aplicación y las amenazas que deseas mitigar. Te recomendamos explorar todas las opciones disponibles y seleccionar las reglas que mejor se adapten a tus necesidades.

---

## Verificación

1. Vuelve al servicio **WAF** y selecciona tu Web ACL
2. Revisa las métricas y estadísticas para verificar que las reglas están bloqueando tráfico no deseado
3. Puedes crear reglas personalizadas si notas tráfico sospechoso

---

## Actualización de reglas

Si necesitas agregar o modificar reglas:

1. Ve a la consola de AWS WAF
2. Selecciona tu Web ACL
3. Haz clic en **Rules** y **Add rule** o **Edit rule**
4. Guarda los cambios y verifica el tráfico nuevamente

---

## Conclusión

AWS WAF es una herramienta poderosa para proteger tu aplicación contra tráfico malicioso o no deseado. Con esta configuración básica, puedes bloquear bots comunes y asegurarte de que solo el tráfico legítimo llegue a tu ALB.

Si tienes más preguntas o necesitas soporte adicional, ¡no dudes en pedir ayuda!
Original file line number Diff line number Diff line change
@@ -0,0 +1,89 @@
---
sidebar_label: Dashboard Loki not responding
sidebar_position: 5
title: "Dashboard Loki not responding"
description: "Dashboard Loki not responding"
tags:
- addons
- loki
- troubleshooting
- monitoring
- grafana
- logs
image: /img/tutorial-img.png
---

import Zoom from "react-medium-image-zoom";
import "react-medium-image-zoom/dist/styles.css";

Comment thread
gonferreyra marked this conversation as resolved.
# Dashboard de Loki no responde

:::success SOLUCION RAPIDA
Eliminar el pod 'loki-read'. Tras 60 segundos este vuelve a funcionar, y con este también el DataSource Loki y sus dashboards relacionados.
:::
Comment thread
gonferreyra marked this conversation as resolved.

:::info
Este error es más recurrente en cluster con baja disponibilidad puesto que generan más rotación de nodos y de pods. Se puede disminuir la recurrencia de este error aumentando la cantidad de Pods loki-read desde la configuración del Addon Loki.
:::

Loki puede estar andando, tal como en la siguiente imagen:

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img src="/img/tutorials/dashboard-loki-not-responding/loki.png" alt="loki" />
</Zoom>

- Si por alguna rotación en Kubernetes se resetea el pod de loki-backend SIN resetearse el de loki-read comienza a fallar, tal como fuerzo reiniciando el StatefulSet de loki-backend lo que concluye en la siguiente situación:

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-2.png"
alt="loki-2"
/>
</Zoom>

Puede verse que el '_Age_' de loki-backend es menor que el '_Age_' de loki-read, en estos casos ocurre este error que provoca que el DataSource de Loki no funcione y por ende tampoco los dashboards que lo utilizan. El error surge porque los pods de 'loki-read' no intentan reconectarse a 'loki-backend' y quedan en este estado donde no responden a las requests que les hace 'loki-backend'.

- Puede verse que el error se forzó correctamente y ahora el dashboard no responde:

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-3.png"
alt="loki-3"
/>
</Zoom>

- La forma para fixearlo es reiniciando el Deployment de 'loki-read' o bien eliminando el Pod que esté corriendo.

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-4.png"
alt="loki-4"
/>
</Zoom>

- Una vez hecho eso volvemos a la situación deseada que es la siguiente:

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-5.png"
alt="loki-5"
/>
</Zoom>

Como puede verse ahora el _Age_ de loki-read es menor que el _Age_ de loki-backend con lo que nos aseguramos que loki-read está conectado y el Dashboard vuelve a funcionar correctamente como se ve en la siguiente imagen:

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-6.png"
alt="loki-6"
/>
</Zoom>

Se puede disminuir la recurrencia de este error si se incrementa la cantidad de pods 'loki-read' activos. Lo cual puede realizarse desde la configuración del Addon Loki.

<Zoom overlayBgColorEnd="rgba(255, 255, 255, 0.8)">
<img
src="/img/tutorials/dashboard-loki-not-responding/loki-7.png"
alt="loki-7"
/>
</Zoom>
Loading