Мне нужно извлечь данные авторизации из файла auth.log. Мне также нужно отформатировать эти данные, чтобы их было легко просматривать. В моем случае это несколько столбцов: Дата Время IP действия пользователя.
У меня уже есть часть кода, точнее, я могу получить данные за последние 3 часа. , но у меня проблемы с форматированием.
Буду очень благодарен за помощь!
#!/bin/bash
LOG_FILE="/var/log/auth.log"
OUTPUT_FILE="/home/phantaserrr/Script/auth_log_report.txt"
current_time=$(date +%s)
time_threshold=$((current_time - 3 * 3600))
time_threshold_formatted=$(date -d @$time_threshold +"%Y-%m-%dT%H:%M:%S")
awk -v threshold="$time_threshold_formatted" '
/polkitd|gdm-launch-environment/ {
split($1, date, "T");
split(date[1], ymd, "-");
split($2, time, "+");
user = $5;
action = $0;
if (match($0, /rhost=([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/, arr)) {
ip = arr[1];
} else {
ip = "unknown";
}
if (action ~ /session opened/ || action ~ /session closed/ || action ~ /logged out/) {
# Clean up action string
sub(/\[.*\] /, "", action);
print ymd[1] "-" ymd[2] "-" ymd[3], time[1], user, action, ip;
}
}
' "$LOG_FILE" > "$OUTPUT_FILE"
Когда я пытаюсь выполнить этот скрипт, я получаю следующие ошибки
awk: line 11: syntax error at or near ,
awk: line 13: syntax error at or near else
awk: line 17: syntax error at or near if
awk: line 22: syntax error at or near }
Вот пример формата файла журнала
2024-08-03T16:31:12.232218+03:00 phantaserrr-VM gnome-keyring-daemon[2015]: The PKCS#11 component was already initialized
2024-08-03T16:31:12.233818+03:00 phantaserrr-VM gnome-keyring-daemon[2225]: discover_other_daemon: 1
2024-08-03T16:31:12.250473+03:00 phantaserrr-VM gnome-keyring-daemon[2227]: discover_other_daemon: 1
2024-08-03T16:31:12.250567+03:00 phantaserrr-VM gnome-keyring-daemon[2015]: The Secret Service was already initialized
2024-08-03T16:31:12.251861+03:00 phantaserrr-VM gnome-keyring-daemon[2230]: discover_other_daemon: 1
2024-08-03T16:31:16.130923+03:00 phantaserrr-VM polkitd[730]: Registered Authentication Agent for unix-session:2 (system bus name :1.79 [/usr/bin/gnome-shell], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
2024-08-03T16:31:17.631108+03:00 phantaserrr-VM gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Подробнее здесь: https://stackoverflow.com/questions/788 ... using-bash
Извлечение и форматирование данных из файла AUTH.LOG с помощью BASH. ⇐ Linux
1722750683
Anonymous
Мне нужно извлечь данные авторизации из файла [b]auth.log[/b]. Мне также нужно отформатировать эти данные, чтобы их было легко просматривать. В моем случае это несколько столбцов: Дата Время IP действия пользователя.
У меня уже есть часть кода, точнее, я могу получить данные за последние 3 часа. , но у меня проблемы с форматированием.
Буду очень благодарен за помощь!
#!/bin/bash
LOG_FILE="/var/log/auth.log"
OUTPUT_FILE="/home/phantaserrr/Script/auth_log_report.txt"
current_time=$(date +%s)
time_threshold=$((current_time - 3 * 3600))
time_threshold_formatted=$(date -d @$time_threshold +"%Y-%m-%dT%H:%M:%S")
awk -v threshold="$time_threshold_formatted" '
/polkitd|gdm-launch-environment/ {
split($1, date, "T");
split(date[1], ymd, "-");
split($2, time, "+");
user = $5;
action = $0;
if (match($0, /rhost=([0-9]+\.[0-9]+\.[0-9]+\.[0-9]+)/, arr)) {
ip = arr[1];
} else {
ip = "unknown";
}
if (action ~ /session opened/ || action ~ /session closed/ || action ~ /logged out/) {
# Clean up action string
sub(/\[.*\] /, "", action);
print ymd[1] "-" ymd[2] "-" ymd[3], time[1], user, action, ip;
}
}
' "$LOG_FILE" > "$OUTPUT_FILE"
Когда я пытаюсь выполнить этот скрипт, я получаю следующие ошибки
awk: line 11: syntax error at or near ,
awk: line 13: syntax error at or near else
awk: line 17: syntax error at or near if
awk: line 22: syntax error at or near }
Вот пример формата файла журнала
2024-08-03T16:31:12.232218+03:00 phantaserrr-VM gnome-keyring-daemon[2015]: The PKCS#11 component was already initialized
2024-08-03T16:31:12.233818+03:00 phantaserrr-VM gnome-keyring-daemon[2225]: discover_other_daemon: 1
2024-08-03T16:31:12.250473+03:00 phantaserrr-VM gnome-keyring-daemon[2227]: discover_other_daemon: 1
2024-08-03T16:31:12.250567+03:00 phantaserrr-VM gnome-keyring-daemon[2015]: The Secret Service was already initialized
2024-08-03T16:31:12.251861+03:00 phantaserrr-VM gnome-keyring-daemon[2230]: discover_other_daemon: 1
2024-08-03T16:31:16.130923+03:00 phantaserrr-VM polkitd[730]: Registered Authentication Agent for unix-session:2 (system bus name :1.79 [/usr/bin/gnome-shell], object path /org/freedesktop/PolicyKit1/AuthenticationAgent, locale en_US.UTF-8)
2024-08-03T16:31:17.631108+03:00 phantaserrr-VM gdm-launch-environment]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Подробнее здесь: [url]https://stackoverflow.com/questions/78830351/extracting-and-formatting-data-from-auth-log-file-using-bash[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия