{ 6 comments… read them below or add one }

1 Shane August 13, 2009 at 9:36 am

Will this stop all the FTP brute forcers?

I see login attempts in the 10’s of thousands on our FTP servers, yet when I look at the number of states created from the attacker IP’s to our FTP servers, the total is often 1 per attacker/server.

It seems that they open one TCP connection and then keep trying usernames and passwords through that one connection.


2 nixCraft August 13, 2009 at 10:49 am


You can configure FTP to drop connection after each failed attempt.

Another, option is configure keys to login and drop password based login. Or just allow access to vpn authenticated session. Same goes to firewall port and only allow access from limited set of WAN and LAN IPs. However, this will create problem if someone is working from home or using dialup access.

Finally, strong password is required along with password aging. It all depends upon how much time and money you are willing to put…


3 Shane August 13, 2009 at 12:01 pm

Hi Vivek,

Thanks for this. I will see if I can configure our FTP daemon to drop session after failed login.

Unfortunately we don’t have the luxury of dropping password logins, since we provide last minute adhoc access to clients (who are king in my line of work).


4 SIFE November 18, 2009 at 10:58 pm

Salamo Alikom
i have defined a table depend in file ,containt some ip’s to block like so :

table const file "/etc/pf/banned"

block in log (all) on $net_card from proto tcp from to any port $ports

but this does not work ,why ?


5 Tim July 25, 2011 at 1:56 pm

Could this be combined with some sort of white-list table which is exempt from this rule?
Also would such a brute force rule be advisable to use for, say a mail gateway – limiting attacks from spamming mail servers?



6 Marc October 30, 2011 at 1:01 am

SSHGuard has an interesting comparison of the two approaches for reducing brute force attacks: with plain firewall, or at the application level.


Leave a Comment

Tagged as: , , , , , , , , , , , ,

Previous Faq:

Next Faq: