tgoop.com/bash_srv/67
Create:
Last Update:
Last Update:
💡 Bash-совет дня: Мониторинг открытых портов с выводом в Telegram
Автоматизируй контроль за безопасностью своего сервера! Этот простой bash-скрипт проверяет изменения в открытых портах и шлёт уведомление в Telegram, если появились новые или исчезли старые порты.
#!/bin/bash
# Настройки
TG_TOKEN="your_bot_token"
TG_CHAT_ID="your_chat_id"
PORTS_FILE="/var/tmp/open_ports_last.txt"
# Получаем текущие открытые порты
ss -tuln | awk 'NR>1 {print $5}' | cut -d: -f2 | sort -n | uniq > /tmp/open_ports_now.txt
# Если нет предыдущего файла — создаём
if [ ! -f "$PORTS_FILE" ]; then
cp /tmp/open_ports_now.txt "$PORTS_FILE"
exit 0
fi
# Сравниваем с предыдущим состоянием
DIFF=$(diff -u "$PORTS_FILE" /tmp/open_ports_now.txt)
# Если есть изменения — шлём в Telegram
if [ -n "$DIFF" ]; then
MESSAGE="⚠️ Обнаружены изменения в открытых портах:\n\`\`\`\n$DIFF\n\`\`\`"
curl -s -X POST "https://api.telegram.org/bot$TG_TOKEN/sendMessage" \
-d chat_id="$TG_CHAT_ID" \
-d parse_mode="Markdown" \
-d text="$MESSAGE"
cp /tmp/open_ports_now.txt "$PORTS_FILE"
fi
# Уборка
rm -f /tmp/open_ports_now.txt
📌 Как использовать:
1. Замените
your_bot_token и your_chat_id на свои значения.2. Добавьте в cron, чтобы проверять, например, каждые 10 минут:
*/10 * * * * /path/to/script.sh
🔒 Будьте в курсе неожиданных открытий портов на своих серверах!
👉@bash_srv
BY Bash Советы

Share with your friend now:
tgoop.com/bash_srv/67
