TGViewer
BashTex | Linux BashTex | Linux @bash_tex · 2.51K subscribers
Post #238 1.34K
Фоновый Bash-демон, отслеживающий сетевые соединения

Иногда нужно знать, кто подключается к вашей системе - особенно если это сервер с внешним доступом. Мы можем написать лёгкий Bash-демон, который будет отслеживать входящие соединения в реальном времени, логировать и даже уведомлять при подозрительной активности.

Скрипт будет запускаться в фоне, опрашивать ss или netstat, фильтровать новые IP-адреса, логировать соединения и уведомлять о каждом новом.

📱 Пример скрипта-демона


#!/bin/bash

LOG="/var/log/connwatch.log"
KNOWN="/tmp/known_ips.txt"
INTERVAL=10

touch "$KNOWN"

log() {
echo "[$(date '+%F %T')] $1" >> "$LOG"
}

while true; do
# Получаем список активных IP-адресов (входящие TCP)
ss -tn src :22 | awk 'NR>1 {print $5}' | cut -d: -f1 | sort -u > /tmp/current_ips.txt

# Находим новые IP-адреса
comm -13 "$KNOWN" /tmp/current_ips.txt > /tmp/new_ips.txt

while read -r ip; do
[[ -n "$ip" ]] || continue
log "Новое подключение: $ip"

# Telegram уведомление (опционально)
TOKEN="your_token"
CHAT_ID="your_chat_id"
MSG="Новое SSH-соединение: $ip"
curl -s -X POST https://api.telegram.org/bot$TOKEN/sendMessage \
-d chat_id="$CHAT_ID" -d text="$MSG" > /dev/null

done < /tmp/new_ips.txt

mv /tmp/current_ips.txt "$KNOWN"
sleep "$INTERVAL"
done


▪️ Настройка автозапуска как systemd-сервиса


# /etc/systemd/system/connwatch.service
[Unit]
Description=Connection Watcher

[Service]
ExecStart=/usr/local/bin/connwatch.sh
Restart=always

[Install]
WantedBy=multi-user.target



sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable --now connwatch.service


Такой простой демон может стать способом аудита и обнаружения попыток взлома в реальном времени, особенно на серверах без продвинутого мониторинга.

BashTex 📱 #bash #utils
  • 🔥 17
  • 👍 2
  • 🫡 2
  • 😁 1
More from @bash_tex
  1. Oct 13, 2026openat2(): как Linux защищает от выхода за пределы каталога Допустим, приложение должно чи…
  2. Oct 12, 2026xargs против while read: где быстрее и безопаснее Обе конструкции позволяют обработать спи…
  3. Oct 9, 2026BashTex 📱 #мем
  4. Oct 8, 2026Bridge FDB - как Linux bridge узнаёт, где находится MAC Linux bridge не знает заранее, за…
  5. Oct 7, 2026/dev/tcp - сетевое соединение средствами Bash В Bash есть малоизвестная возможность работа…
  6. Oct 6, 2026Ephemeral ports - почему заканчиваются исходящие TCP-порты Когда приложение устанавливает…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →