This procedure uses fail2ban.
First, create a new filter file gitblit.conf in filter directory (Debian/CentOS: /etc/fail2ban/filter.d/) or into filter.conf file. Here is an example:
[Definition]
failregex = Failed login attempt for .+, invalid credentials from <HOST>\s*$
could not authenticate .*? \(/<HOST>:[0-9]*\) for SSH using the supplied password$
ignoreregex =
Then edit jail.conf to add "gitblit" service (Debian: /etc/fail2ban/jail.conf). For example:
[gitblit]
enabled = true
port = 443,29418
protocol = tcp
filter = gitblit
logpath = /var/log/gitblit.log
Reload fail2ban config to apply (fail2ban-client reload).
Check the status of the gitblit fail2ban jail with fail2ban-client status gitblit