Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Помогите с регулярным выражением  (Прочитано 432 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ввысь

  • Автор темы
  • Активист
  • *
  • Сообщений: 435
    • Просмотр профиля
Помогите с регулярным выражением
« : 29 Апреля 2021, 00:31:01 »
Здравствуйте.

Есть вот такая строка
Apr 28 23:10:40 Ubuntu-1604-xenial-64-minimal kernel: [62722458.588112] Iptables: IN=eth0 OUT= MAC=52:54:a2:02:14:bd:d2:74:7f:6e:37:e3:08:00 SRC=79.124.62.82 DST=172.31.1.100 LEN=40 TOS=0x00 PREC=0x00 TTL=245 ID=55706 PROTO=TCP SPT=48243 DPT=35395 WINDOW=1024 RES=0x00 SYN URGP=0

Нужно для собственного фильтра - "Мы должны заменить IP адрес на специальный тег <HOST> внутри выражения, чтобы fail2ban смог по нему выцепить из строки нужный IP адрес."

Мне нужен ip 79.124.62.82

Как должно выглядеть регулярное выражение для нахождения ip из поля SRC= ?
Спасибо.

Оффлайн ALiEN175

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5455
  • Сделай шаг и пройдешь милю
    • Просмотр профиля
Re: Помогите с регулярным выражением
« Ответ #1 : 29 Апреля 2021, 00:43:18 »
grep -Po '(SRC=)\K[^ ]*'
ASUS P5K-C :: Intel Xeon E5450 @ 3.00GHz :: 8 GB DDR2 :: Radeon R7 260X :: XFCE
ACER 5750G :: Intel Core i5-2450M @ 2.50GHz :: 6 GB DDR3 :: GeForce GT 630M :: XFCE

Оффлайн KJOI

  • Активист
  • *
  • Сообщений: 287
  • ALT Linux
    • Просмотр профиля
Re: Помогите с регулярным выражением
« Ответ #2 : 29 Апреля 2021, 00:45:46 »
Здравствуйте.

Есть вот такая строка
Apr 28 23:10:40 Ubuntu-1604-xenial-64-minimal kernel: [62722458.588112] Iptables: IN=eth0 OUT= MAC=52:54:a2:02:14:bd:d2:74:7f:6e:37:e3:08:00 SRC=79.124.62.82 DST=172.31.1.100 LEN=40 TOS=0x00 PREC=0x00 TTL=245 ID=55706 PROTO=TCP SPT=48243 DPT=35395 WINDOW=1024 RES=0x00 SYN URGP=0

Нужно для собственного фильтра - "Мы должны заменить IP адрес на специальный тег <HOST> внутри выражения, чтобы fail2ban смог по нему выцепить из строки нужный IP адрес."

Мне нужен ip 79.124.62.82

Как должно выглядеть регулярное выражение для нахождения ip из поля SRC= ?
Спасибо.
Ну так и пишите классическая регулярка
SRC=([0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3})
Если с префиксом использовать тогда точки экранировать надо.
Русский Линукс: https://www.basealt.ru/products/simplylinux/
Мой проект git «Kernel Manager» linux: https://github.com/Koi-foo/kernel-manager/

Оффлайн Ввысь

  • Автор темы
  • Активист
  • *
  • Сообщений: 435
    • Просмотр профиля
Re: Помогите с регулярным выражением
« Ответ #3 : 29 Апреля 2021, 14:04:29 »
ALiEN175, KJOI, большое спасибо.

 

Страница сгенерирована за 0.033 секунд. Запросов: 25.