Telegram Web Link
script minimalista para checkear nginx


#!/bin/bash

# Definir la API Key de PagerDuty
api_key="XSERIALX"

# Definir el puerto a verificar
port=443

# Función para comprobar si el puerto está activo
check_port() {
netstat -tuln | grep -q ":$port "
}

# Verificar si el puerto 443 está activo
if check_port; then
echo "El puerto $port está activo. Nginx está funcionando correctamente."
exit 0
else
echo "El puerto $port no está activo. Intentando reiniciar Nginx..."

# Reiniciar Nginx
systemctl restart nginx
sleep 10 # Esperar unos segundos para que el servicio arranque

# Verificar nuevamente si el puerto 443 está activo
if check_port; then
echo "El puerto $port está activo después del reinicio. Nginx se ha reiniciado correctamente."
exit 0
else
echo "El puerto $port sigue sin estar activo después del reinicio. Enviando alerta a PagerDuty..."

# Enviar evento a PagerDuty
curl -X POST "https://events.pagerduty.com/v2/enqueue" \
-H "Content-Type: application/json" \
-d '{
"routing_key": "'"${api_key}"'",
"event_action": "trigger",
"payload": {
"summary": "El puerto 443 no está activo y Nginx no responde",
"severity": "critical",
"source": "servidor-web",
"component": "nginx",
"group": "web",
"class": "webserver",
"custom_details": {
"description": "El servicio Nginx no está funcionando y el puerto 443 sigue inactivo después del reinicio. Se requiere intervención manual."
}
}
}'
exit 1
fi
fi
Blog de ArmandoF
https://www.linkedin.com/posts/franciscoarencibia_devops-devsecops-aws-activity-7294062779500535810-FvHC?utm_source=share&utm_medium=member_ios
Desengrasado dar charlas de nuevo, enseñando uno de los tantos caminos de cómo superarse y obtener un mejor empleo adentrándose en el mundo Devops sobre AWS
👍8
Exportar registros route53 -> bind9

aws route53 list-resource-record-sets --hosted-zone-id ZONE_ID > records.json


despues usas este script de python para parsearlo

import json

def route53_to_bind9(json_file, output_file):
with open(json_file, 'r') as f:
data = json.load(f)

records = data.get("ResourceRecordSets", [])

bind_lines = []

for record in records:
name = record["Name"].rstrip('.') # Elimina el punto final
record_type = record["Type"]
ttl = record.get("TTL", 300)

if "ResourceRecords" in record:
values = [r["Value"] for r in record["ResourceRecords"]]
for value in values:
bind_lines.append(f"{name} {ttl} IN {record_type} {value}")

elif "AliasTarget" in record:
alias = record["AliasTarget"]["DNSName"].rstrip('.')
bind_lines.append(f"{name} {ttl} IN CNAME {alias}")

with open(output_file, 'w') as f:
f.write('\n'.join(bind_lines) + '\n')

print(f"Archivo BIND generado: {output_file}")

# Uso
test_json = "records.json" # Archivo exportado de AWS
output_bind = "zonefile_bind9.txt" # Archivo en formato BIND
route53_to_bind9(test_json, output_bind)
🦺 Caído: Una potente herramienta para auditoría web

✍️ Si trabajas en ciberseguridad, Caido es una alternativa moderna a Burp Suite para analizar aplicaciones web.

➡️https://docs.caido.io/

Su instalación es sencilla en cualquier sistema:

🖥️ Linux: Descarga el AppImage, asígnale permisos (chmod +x) y ejecútalo.
💻 Windows: Instala con el ejecutable .exe en pocos pasos.
🍏 macOS: Descarga el .dmg y arrástralo a "Aplicaciones".

⚙️ Requiere al menos 4GB de RAM y una CPU.

Herramienta ideal para pentesters y analistas que buscan eficiencia en su flujo de trabajo.
👍3
aca os comparto un manual que ha hecho un colega para todo el que quiera iniciarse en aws pero quiero probar todo en su local

https://blog.justme.ovh/posts/run-aws-locally/
👍5
no lo entenderian
😁8👍1
2025/07/08 19:30:51
Back to Top
HTML Embed Code: