PTah
a3c86f05f3
feat: send full daily report body and stats in SAC details
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 14:15:13 +10:00
PTah
bae4640b85
chore: bump agent version to 1.2.0-SAC
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 14:09:35 +10:00
PTah
4a38fc9c24
feat: SAC fallback failure counter (2.3)
...
After SAC_FALLBACK_FAILURES consecutive POST errors, skip SAC until
/health recovers; persist count in SAC_FAIL_COUNT_FILE.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 13:36:19 +10:00
PTah
fbd6770c71
feat: exclusive pilot — spool flush and verify script
...
Replay spool on each monitor loop; sac_post_payload refactor;
pilot-verify-exclusive.sh and --check-sac hints for exclusive mode.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 13:25:47 +10:00
PTah
919ea96ec6
feat: first deploy via update_ssh_monitor.sh --deploy
...
Add first_deploy.sh wrapper and --deploy mode: git clone, install
ssh-monitor and sac-client, optional config/systemd/updater copy,
console summary and config variable checklist.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 12:36:02 +10:00
PTah
0818b92bcd
fix: POST ingest to /api/v1/events when SAC_URL is host root
...
Health already used sac_base_url(); ingest used raw SAC_URL and got
HTTP 405 when config had only https://host without /api/v1/events.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 12:22:10 +10:00
PTah
3cc2649630
fix: always sync sac-client.sh in update_ssh_monitor
...
Copy sac-client.sh on every git pull by checksum, not only when
ssh-monitor binary changes. Restart service when either file updates.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 12:20:14 +10:00
PTah
e986b1004b
feat: map security events to SAC typed payloads
2026-05-27 11:24:19 +10:00
PTah
9996f21584
feat: sudo и notify_send шлют события в SAC (dual)
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 11:01:47 +10:00
PTah
b7ed531122
fix: update_ssh_monitor копирует sac-client.sh, REPO kalinamall
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-27 10:47:38 +10:00
PTah
d2223bad96
merge: kalinamall main + UseSAC sac-client
2026-05-27 10:40:03 +10:00
PTah
9572080cb3
feat: UseSAC sac-client.sh and --check-sac
...
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-26 21:46:35 +10:00
PTah
bea39a6ef5
sync: align internal repo with 1.1.3-server-label
...
- REPO_URL points to git.kalinamall.ru
- ssh-monitor.conf may be committed here (secrets); .env still ignored
- Docs note for closed vs public GitHub
Co-authored-by: Cursor <cursoragent@cursor.com >
v1.1.3-server-label
2026-05-26 19:34:01 +10:00
PTah
b9c5aa3224
chore: ignore production config files with secrets
...
ssh-monitor.conf and local overrides must not be committed to public GitHub.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-05-26 19:33:39 +10:00
PTah
7ce9f1d526
feat: подпись сервера во всех уведомлениях и документация
...
Добавлены message_ensure_server_line и SERVER_DISPLAY_NAME; версия 1.1.3-server-label.
Гайды по уведомлениям и автообновлению.
2026-05-25 09:23:32 +10:00
PapaTramp
21ef703866
Update update_ssh_monitor.sh
2026-05-14 12:59:12 +10:00
PapaTramp
e48a001d37
Create update_ssh_monitor.sh
...
Скрипт проверки наличия обновлений основного скрипта
2026-05-14 12:57:55 +10:00
Andrey Lutsenko
c9455ed917
Remove rutube artifacts from repo; ignore local downloader files
2026-05-03 19:51:00 +10:00
Andrey Lutsenko
f7e688d9b0
Add rutube-download helper and yt-dlp archive id list
2026-05-03 19:48:28 +10:00
Andrey Lutsenko
4a32eca15c
docs: English readme, MIT license, README cleanup
...
- Add readme_eng.md (parallel to README.md)
- Add LICENSE (MIT)
- Refresh README (version, repo table, license section)
2026-05-03 19:44:45 +10:00
ssh-monitor
56d4b0002e
Add ENABLE_IP_BAN mode switch
...
Introduce ENABLE_IP_BAN in config and script.
When set to 0, ssh-monitor works in monitor-only mode (alerts without ipset/iptables bans).
Made-with: Cursor
2026-04-16 12:13:27 +10:00
ssh-monitor
803817cdbb
Переход автобана на ipset, документация и правки README
...
- ssh-monitor: баны через ipset (hash:ip timeout), одно правило iptables/ip6tables;
нормализация бан-листа (один IP — одна строка), версия 1.1.1-ipset.
- docs/install-prerequisites.ru.md: зависимости и установка пакетов (в т.ч. ipset).
- README: ссылка на docs, установка скрипта/systemd без дублирования apt; пометка про ipset.
- IPSET-NOTES.txt: заметки по развёртыванию ipset.
- ssh-monitor.conf.example: закомментированные переменные IPSET_*.
Made-with: Cursor
2026-04-16 11:30:04 +10:00
ssh-monitor
94125757b0
README: абзац с ключевыми темами для поиска на GitHub.
...
Made-with: Cursor
2026-04-14 14:16:08 +10:00
ssh-monitor
673145a199
Версия 1.0.0: релиз, Makefile (make dist), README и .gitignore для архива.
...
Made-with: Cursor
v1.0.0
2026-04-14 13:52:26 +10:00
ssh-monitor
1a8352d65c
Удалена интеграция Zabbix; остались Telegram и email (SMTP).
...
Made-with: Cursor
2026-04-14 12:20:04 +10:00
ssh-monitor
d43afe03c6
Zabbix: передать ZABBIX_SERVER/HOST_NAME в окружение python3 для trapper
...
Made-with: Cursor
2026-04-14 11:47:25 +10:00
ssh-monitor
ce6a3d4620
Zabbix: короткий plain для канала; seq в файле; alert через python3 -o
...
Made-with: Cursor
2026-04-14 11:41:03 +10:00
ssh-monitor
25f85d00fb
Zabbix: усечение UTF-8 для trapper Character (ZABBIX_ALERT_MAX_BYTES)
...
Made-with: Cursor
2026-04-14 11:29:45 +10:00
ssh-monitor
6a4db2d7ad
Zabbix alert: убрать NUL из текста перед trapper (-i)
...
Made-with: Cursor
2026-04-14 11:15:19 +10:00
ssh-monitor
6552b0225f
Zabbix: успех только по failed:0 в ответе; seq через -k/-o; подсказка при отказе сервера
...
Made-with: Cursor
2026-04-14 11:10:30 +10:00
ssh-monitor
5e6b0dedb7
Zabbix: логировать stdout+stderr zabbix_sender; успех при failed: 0 в ответе
...
Made-with: Cursor
2026-04-14 11:06:11 +10:00
ssh-monitor
0e0333e7e4
Zabbix: два вызова zabbix_sender (alert и seq), лог stderr при ошибке
...
Made-with: Cursor
2026-04-14 10:57:32 +10:00
ssh-monitor
eee84e5eb7
fix(notify): отправка во все каналы NOTIFY_ORDER, не только первый успех
...
- BACKUP_WEBHOOK только если все каналы неуспешны
- README/conf.example; версия 0.9.5.3
Made-with: Cursor
2026-04-14 10:50:38 +10:00
ssh-monitor
921fc9c795
fix: локальное время в уведомлениях (NOTIFY_TZ) и антидубль Accepted
...
- notification_date: NOTIFY_TZ → DAILY_REPORT_TZ → date процесса
- SSH_ACCEPT_NOTIFY_DEDUP_SEC: пауза между Telegram для той же пары user+IP
- версия 0.9.5.2, README и conf.example
Made-with: Cursor
2026-04-14 10:23:58 +10:00
ssh-monitor
57935e292e
chore: версия 0.9.5.1
...
Made-with: Cursor
2026-04-14 10:14:22 +10:00
ssh-monitor
4975a6d842
fix: дубли SSH (journal + Accepted) и logind при Service=sshd
...
- journalctl: _COMM=sshd, fallback sshd/ssh; sort -u
- dedupe Accepted в одном проходе по user|ip|port
- LOGIND_SKIP_REMOTE: Type=ssh или Service=*sshd*, повторы loginctl
Made-with: Cursor
2026-04-14 10:12:40 +10:00
ssh-monitor
80d2508d52
feat: строка «Сервер» с основным IPv4 в старте/стопе, отчёте и heartbeat
...
Made-with: Cursor
2026-04-14 10:08:29 +10:00
ssh-monitor
415da821de
fix: версия в Telegram при старте сразу под заголовком
...
Made-with: Cursor
2026-04-14 10:06:02 +10:00
ssh-monitor
02fa70722c
docs: обязательный NOTIFY_CHAIN в README и ssh-monitor.conf.example
...
Made-with: Cursor
2026-04-14 09:56:18 +10:00
ssh-monitor
da5d2638d7
fix: выход с ошибкой, если нет ни одного канала NOTIFY_CHAIN
...
Made-with: Cursor
2026-04-14 09:55:03 +10:00
ssh-monitor
f52dda23ad
docs: Zabbix и пояснение ZABBIX_SEQ_KEY в README
...
Made-with: Cursor
2026-04-14 09:52:07 +10:00
ssh-monitor
17737cbf09
feat(notify): каскад telegram → zabbix → email, NOTIFY_ORDER, SMTP, v0.9.5
...
Made-with: Cursor
2026-04-14 09:44:43 +10:00
PTah
a1bfa6a003
chore: зафиксировать линию версий 0.9 (semver 0.9.0)
...
- Комментарий в скрипте и уточнение в README
Made-with: Cursor
2026-04-14 08:11:49 +10:00
PTah
bdb10e82d8
feat: версия 0.9.0, --version и вывод в лог/health/старт
...
- SSH_MONITOR_VERSION + суффикс +git[-dirty] при запуске из репозитория
- README: раздел про версионирование
Made-with: Cursor
2026-04-14 08:05:50 +10:00
PTah
0f2b26b4b4
feat(heartbeat): строка сервера с основным IPv4 в скобках
...
Made-with: Cursor
2026-04-14 07:59:52 +10:00
PTah
febe359248
fix(logind): не дублировать SSH при Type=tty и Service=sshd
...
- LOGIND_SKIP_REMOTE: учёт Service=sshd, короткие повторы loginctl при гонке
- README и пример конфига
Made-with: Cursor
2026-04-13 12:28:00 +10:00
PTah
ced61c417a
feat: единая инициализация меток LAST_* для SSH/sudo/logind
...
- checkpoint_stamp_init_if_bad: нет файла / битое значение → только метка «сейчас», без бэклога
- sudo/logind: убрано окно -30m при «первом» запуске (как у SSH)
- README: раздел про файлы-метки и отличие LAST_SECURITY_EVENTS_FILE
Made-with: Cursor
2026-04-13 10:06:57 +10:00
Луценко Андрей Анатольевич
3cfdc7b12c
feat: мониторинг systemd-logind (journalctl), конфиг и антидубль SSH
...
- Опрос journalctl -u systemd-logind, LAST_LOGIND_CHECK_FILE, LOGIND_*
- README: параметры logind, ротация LAST_*, journalctl
Made-with: Cursor
2026-04-13 09:45:41 +10:00
PTah
1d37905f27
feat: DAILY_REPORT_TZ for local-time daily report
2026-04-12 20:22:25 +10:00
PTah
f085fecd3a
fix: sudo monitoring via journal grep and secure log
2026-04-12 20:16:53 +10:00