У меня есть сценарий, над которым я работаю, чтобы заблокировать IP-адрес неудачного входа в систему на SFTP-сервере. Я также использую Centrify для подключения сервера к AD, и я заметил, что Centrify регистрирует пользователей по-разному, чем обычно. Я в состоянии подтянуть IP-адрес неудачных попыток входа в следующую один лайнер:Удалить символы с awk
(grep sshd /var/log/messages | grep "AUTH_FAIL_PASSWD" | awk '{print $18}' | sort | uniq -c | awk '{ if ($1 > 10) print $2 }')
С Centrify это дает выход:
client=0.0.0.0
Что мне нужно сделать удалить «клиент = «так что я могу передать только IP-адрес остальной части скрипта.
Спасибо за помощь!
В любое время, когда вы соединяете это с помощью grep и awk, вы совершили ошибку. awk может сделать эту фильтрацию для вас. '/ sshd/&&/AUTH_FAIL_PASSWD/{print $ 18}' –
Вы также можете выполнить де-дублирование в awk (по стоимости хранения записей в памяти) и без необходимости сортировки. –
'{if ($ 1> 10) print $ 2}' можно переписать как '$ 1> 10 {print $ 2}'. –