Это всего лишь способ выполнить работу. Вместо имени пользователя я предпочитаю подсчитывать, сколько раз конкретный IP-адрес пытается подключиться к моему хосту, потому что в конечном итоге я могу его заблокировать.
awk '/Failed password/{ z[$11]++; }
END{
for (i in z){
if (z[i]>3) printf("%s attemps %s times.\n", i, z[i])
}
}' /var/log/secure
(Конечно, это может быть одинарная команда, я сделал отступ для повышения читабельности.)
Объяснение:
awk
читает файл журнала построчно.
Если строка содержит строку string / Failed password /
увеличивает индекс элемента массива z [$ 11] ++
на $ 11
(т.е. IP-адрес): я использую это как счетчик. В конце найдите в массиве z [$ 11]
и распечатайте только те IP-адреса, которые пытались подключиться более 3 раз.
Вы можете настроить чек и сообщение для печати по своему усмотрению.
Если вас беспокоят попытки подбора пароля, могу ли я предложить вам использовать существующий инструмент как Fail2ban , который сканирует файлы журналов и блокирует IP-адреса, которые показывают вредоносные признаки (например: слишком много сбоев пароля , ищущие эксплойты и т.д ..). Его легко понять и настроить в соответствии с вашими потребностями.
Сначала необходимо установить пакет Sysvinit
:
apt-get install sysvinit-core sysvinit-utils
cp /usr/share/sysvinit/inittab /etc/inittab
Настроить grub:
Отредактировать файл / etc / default / grub
и изменить GRUB_CMDLINE_LINUX_DEFAULT
to:
GRUB_CMDLINE_LINUX_DEFAULT="init=/lib/sysvinit/init console=hvc0 console=ttyS0"
update grub
:
update-grub
Перезагрузитесь, затем удалите все пакеты systemd:
apt-get remove --purge --auto-remove systemd
Чтобы предотвратить установку пакетов systemd в apt
в будущем, запустите:
echo -e 'Package: systemd\nPin: release *\nPin-Priority: -1' > /etc/apt/preferences.d/systemd
echo -e '\n\nPackage: *systemd*\nPin: release *\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd
Закрепите основные пакеты в wheezy:
echo deb http://ftp.debian.org/debian/ wheezy main contrib non-free >/etc/apt/sources.list.d/wheezy.list
echo -e '\n\nPackage: policykit-1\nPin: origin "wheezy"\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd
echo -e '\n\nPackage: libpolkit-*\nPin: origin "wheezy"\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd
echo -e '\n\nPackage: upower\nPin: origin "wheezy"\nPin-Priority: -1' >> /etc/apt/preferences.d/systemd
Установите polkit:
apt-get install polkit-1 libpolkit-agent-1-0 libpolkit-backend-1-0 libpolkit-gobject-1-0 upower udisks
Перезагрузите