Обновить server/motd-info.sh

This commit is contained in:
2026-04-15 11:00:46 +00:00
parent 6c4778abba
commit 50bd55af3a

View File

@@ -1,6 +1,6 @@
#!/bin/bash
# Скрипт установки кастомного sysinfo MOTD
# Скрипт установки кастомного sysinfo MOTD со статистикой логинов
TARGET_PATH="/etc/update-motd.d/zzzzz-motd-sysinfo"
@@ -61,18 +61,12 @@ get_recent_logs() {
fi
}
FAILED_IPS=""
SUCCESS_IPS=""
RECENT_LOG=$(get_recent_logs)
if [[ -n "$RECENT_LOG" ]]; then
# Ищем любые попытки ("Failed" и "Accepted") и корректно достаем IP (после слова "from")
FAILED_IPS=$(echo "$RECENT_LOG" | grep "Failed " | awk '{for(i=1;i<=NF;i++) if($i=="from") print $(i+1)}' | sort | uniq -c | sort -nr | head -n 10 | awk '{printf "%s: %s\n", $2, $1}')
SUCCESS_IPS=$(echo "$RECENT_LOG" | grep "Accepted " | awk '{for(i=1;i<=NF;i++) if($i=="from") print $(i+1)}' | sort | uniq -c | sort -nr | head -n 10 | awk '{printf "%s: %s\n", $2, $1}')
fi
FAILED_IPS=$(echo "$RECENT_LOG" | grep "Failed " | awk '{for(i=1;i<NF;i++) if($i=="from") print $(i+1)}' | grep -E '^[0-9]+\.[0-9]+' | sort | uniq -c | sort -nr | head -n 10 | awk '{printf "%s: %s\n", $2, $1}')
SUCCESS_IPS=$(echo "$RECENT_LOG" | grep "Accepted " | awk '{for(i=1;i<NF;i++) if($i=="from") print $(i+1)}' | grep -E '^[0-9]+\.[0-9]+' | sort | uniq -c | sort -nr | head -n 10 | awk '{printf "%s: %s\n", $2, $1}')
echo -e "\n\n\n${BLUE}============ Состояние сервера ============${RESET}"
echo -e "\n\n${BLUE}============ Состояние сервера ============${RESET}"
echo -e "${YELLOW}ОЗУ: ${GREEN}${MEM_STAT}${RESET}"
echo -e "${YELLOW}Нагрузка: ${GREEN}${LOAD_AVG}${RESET} (1/5/15 мин)"
echo -e "${YELLOW}Диск: ${GREEN}${DISK_STAT}${RESET}"