How to install BFD (Brute Force Detection) Published: Jan 21, 2004
  • Rating


Are you disgusted or disappointed with your current web host? Have you switched web hosting companies too many times? Have you thought of hosting your own website(s)? Do you have the ambition to control and manage your own web server?

Hosting Your Own Web Server: Things to Consider

Are you disgusted or disappointed with your current web host? Have you switched web hosting companies too many times? Have you thought of hosting your own website(s)? Do you have the ambition to control and manage your own web server?

Are you disgusted or disappointed with your current web host? Have you switched web hosting companies too many times? Have you thought of hosting your own website(s)? Do you have the ambition to control and manage your own web server?

If you answered 'yes' to the questions above, then you may be ready to host your own sites. This article will give you things to consider while making the switch.

When being your own web host you should be technically inclined and have basic knowledge of operating systems, understand technical terms, understand how to setup a server environment (such as: DNS, IIS, Apache, etc.) have basic knowledge of scripting languages and databases (PHP, Perl, MySQL, etc.), be familiar with current technologies, and have a basic understanding of hardware and server components.

You should realize the pros & cons. It is one thing to say, you want to host your own web server and it is another thing to actually do it.


-Own sense of responsibility
-Awareness level raised (you are at the frontline of all server happenings)
-No monthly hosting fees/accounts
-Incompetence no longer exist
-Non-shared environment (dedicated server)
-Unlimited websites, databases, content, storage, etc.
-More bandwidth
-No more waiting on someone else time
-Complete control


-Exhausting at times
-Faced with server/hardware problems
-ISP business account (monthly business/broadband expense)
-If server goes down then the website is offline
-No technical support team
-Software, hardware, and network expenses

There could be many more pros & cons but I’ve pointed out some of the major ones. Managing a web server starts as a full time job, you must constantly monitor its performance and security. This can sometimes be an exhausting task, especially if you currently have other responsibilities. Though, the control you will have over your website and its performance is rewarding enough. You no longer have to wait for technical support or approval to install a script onto the server. You can have as many websites and databases you want, as long as your hardware can handle it. You no longer have to go into the discussion forums and search for the best web host or rant about how much you hate your current host. You can even begin hosting family & friends personal websites.

Ask yourself, how technically advanced are you? Many times you do not have to be a tech guru or anything of the sort, but you must be very resourceful. You must know how to find resolutions and answers to problems, quickly and efficiently. This means you must be internet savvy. Not just the average surfer, who surfs aimlessly, but you must be the surfer who can always find what they are looking for. This is key, because with any server environment you are going to run into problems and finding the answers are most accomplished online, using multiple resources, search techniques, and engines. Sure you can hire someone to fix your problems, but as we should have learned from the "web hosting", having someone do it for you isn't always the best option. Here is a test to see if you are ready to find solutions. I need a solution to a Microsoft Windows 2003 Server Event Error - "Event ID: 1056” it’s a DHCP Server Error. How would you search? Go ahead find the solution.

Did you first go to Google? If you did, that was a nice effort and common for most, plus a good place to start, but usually it is best to start at the developers' website. In this case "" would have been the first option. Why? Google would more than likely provide you with the answer from Microsoft and other sources, but you don't want to get inaccurate information from other sources. It is common to get information from Microsoft that would not specifically resolve your problem, but the developer should always be your first place to search for the answers. Now search the error again and go to the Microsoft site and find the solution.

You should had found this link:;en-us;282001 (Event ID 1056 is Logged after installing DHCP)

What search phrase did you use? It should have been Event ID: 1056, because the Event ID is the exact error, it pinpoints your exact problem without broadening your search. Sometimes the error description is also appropriate to search, just the error description by itself or in combination with the Event ID. It depends on your error, your search feedback, your ability, and technique. For this example I did not include the error description.

Google or Yahoo! should have been your second option (the two largest search engines). Then search other smaller and niche search engines. A good search site which makes use of Google’s operator tags is Next you should search within forums and discussion groups. If you are pretty internet savvy and have a plentiful or few forums and discussion groups which you frequent then you might actually visit those places before visiting Google or Yahoo!. You can even visit those before visiting the developer site since it is a trusted source, but I wouldn't recommend it, I still would go to the developers' site first. Okay, so now we have planted our feet and have familiarized ourselves with being internet (search) savvy. We are ready to purchase a server!

When making a server purchase you need to consider a few things before doing so. What to buy? A top of the line, quadruple processor, and super fast turbo server is always ideal, but many times it is not logical or affordable. Therefore, you need to weigh your options (sensibly).

What to buy?

First determine your budget. Be realistic and expect to spend at least $2,500 for a low-end server. For a low-end, quality server with other needed equipment and services I spent a little over $4,500 easily.

Determine your ISP (broadband) provider. Research and speak with several different vendors before deciding which broadband solution best suit your needs. Each provider plan is different and has different benefits, determine the best one which fits your needs. Bandwidth should be put into consideration when choosing your ISP.

A backup device should be purchased before implementing a server install. The backup device should be double the server storage space. This could be a standalone unit like an external hard drive or network storage device or the backup device could be multiple devices such as: backup tapes, disc, etc. The reason the backup device should be larger is because you want to be able to have months worth of backups and not just weekly or monthly backups. You should have at least 24 weeks of backups without the concern of storage space. The backup device or safe deposits should also be external, removable, and portable. This is so the backups can be stored in a remote location. Usually for safe-keeping, in event of a theft or disaster.

Determine your daily traffic goal (the daily traffic which you hope to see within 1 year – be realistic), divide that number by the daily traffic you currently receive, and then multiply that number by 5. That is the total number of GB space you need.

Daily Traffic Goal: 10,000 (Divided by) Current Daily Traffic: 500 (Times X) 5 = 100GB

In the example you should purchase a 100GB Hard Drive, it is best to buy 2 or more drives oppose to 1. In this case, since 50GB drives do not exist or harder to find, you would buy two 60GB drives giving you a total of 120GB. 2 or more drives are usually needed in a server to configure the proper RAID option, in some cases 3 or more are needed. Your backup storage space should be a minimum capacity of 200GB (or 240GB, optional).


Determine your memory. If your web server daily traffic goal is 500,000 then I would recommend at least 2GB worth of memory. If it is a shared server, meaning it also has other server services running on the machine, especially a mail server or database server (which is not recommended) then your memory should at least be 3GB or more. Otherwise you can think small and upgrade as needed, a 1GB memory stick should be fine for starters.

Determine your network components, which NIC card best performs under high traffic levels and which router best performs for your LAN / web server. It is best to get a router which has a built-in firewall (commonly known as a “hardware firewall”). Your ISP may provide you with a router or hardware firewall, this is how they are able to authorize your traffic on their network. Like a cable box does for cable television. The router also shares your IP address with other clients on your network. This enables you to share your internet connection without having to get a different IP from your ISP. The hardware firewall is simply a router with a built-in firewall, which means it shares your IP address as well as provides added protection to your network. It blocks bad addresses and ports at the forefront, before it can even make it to your computer. It is not recommended to rely only on a hardware firewall for security, this is just the first step. It is recommended to also include a software firewall (firewall software which installs on your computer) and it is recommended to continue timely security practices, such as updating and patching your system on a scheduled routine.

Determine your processor speed and power. Regardless of the amount of traffic you are expecting I would recommend a dual processor or greater. A dual processor or greater is best because if your website unexpectedly take off then you will be well prepared and if you host other server options or websites on the same server then you will have better performance. At the time of this writing the 64-bit platform is the processor direction. 3.8GHz is the most available speed. If your pockets can afford the latest technologies then that is ideal, but keep in mind at this particular time a 64-bit compatible processor is not necessary, without having many applications that require or deliver on that platform. That is a lot of speed going no where fast. Also, remember the power of the 64-bit platform and the greater the processor speed the more heat it produces, therefore it must be cooled much more rapidly and efficiently. At this time a dual 32-bit, 2.8GHz – 3.2GHz processor will suffice (even that is way more than enough). Though, if your pockets can afford it then the latest and greatest would be fine, you will be well prepared. Otherwise, do like most people and upgrade when the time comes.

Make sure you have a CD/RW drive. A floppy disk drive is not needed, but I do recommend it for making system restore disk. The CD/RW drive is needed because you need some type of removable storage device. You never know when you need to install a driver from a different location…like a ethernet driver. An external CD/RW drive is the best option, especially if you have multiple machines.

Choose your operating system carefully. Choose the vendor which you are most comfortable with. Do not choose a MAC if you never used a MAC before. Just because your friend suggests it and says it is a piece of cake does not mean it will be for you. You are trying to get a web server online not re-learn a whole new system. Stay focused and grounded. If you are comfortable with Microsoft then go with Microsoft, regardless if the IT person at your job says Microsoft products are unsecure, Linux or Unix is more secure and much better for a web server. If you have never used Linux or (especially) Unix then you will be in for a ride of your life. Your web server experience will soon become a nightmare and you will have wasted thousands of dollars on equipment. Go with what you know, not what you are told. Each platform has its pros and cons: Microsoft is the user-friendly of them all; Mac is the web/graphic developer of them all; Linux is the open-source/developers paradise of them all; Unix is the most secure of them all. Each of them can be tweaked in ways to provide a solid, quality platform, it is best to stick with what you already know.

You should install on your system all the web services (such as: Apache, IIS, etc.), applications (such as: backup device software, RAID (Array) Manager), scripting languages (such as: PHP, Perl, etc.), CGI, Database (such as: MySQL, Microsoft SQL, etc.), and a web log analyzer (such as: weblog expert, nihuo, etc.). It is also recommended to perform system updates, security patches, and firewall installs and configurations. It is sometimes best to leave the security installs and configurations for after you have the system functioning properly to avoid any uncalculated problems. This way when you install the firewall and something stops working properly like connecting to your website from outside your network, you can troubleshoot assuming that it is the firewall, therefore you would begin by opening port 80 on the firewall. This method can save you a lot of hassle, but can sometimes be considered the unsecure method, especially if you don’t have a hardware firewall already in place.
Next, there are a few things to consider before installing and configuring a server. Where to put it? A secluded, cool location is ideal, but if this cannot be accomplished then adjustments can be made.

Where to put it?

Locate a location within your home that is static-free, we do not want to put the server on the carpet, near curtains, or anything else that can produce a static reaction. The reason for this is that you do not want the server internal components to receive a static charge and short circuit.

The location should be a cool environment, preferably below room temperature. The reason for a cool area is because servers (as well as desktop computers) produce large amounts of heat, the more heat it produces the more it needs to cool off. If the server is not kept cool, then this can lead to the server hanging and then eventually crashing. It's the same result of when a car overheats, it stops running. You can keep a server internal components cool by keeping the room cool, additionally you can add more fans to the server which cools the server internal components, you can also position a standalone fan directly at the server back panel and constantly have the fan cool the server internal components. Depending on how cool your room is and how much heat your server produces, getting more fans for your server may be a must and not an option.

It is suggested that the server is at a higher level within your house (mid-floor), because if it is in the basement and a flood occurs it could ruin it. If it is in the attic and the sun beams on the attic for hours the server could overheat. Mid-floor level is usually the cooler place within the home, but these recommendations is optional and you should put the server in the most comfortable and convenient space following the rest of the guidelines.

Be sure the area you choose is not damp or wet (no leaks, moisture, near any liquids, or near a window “especially open”). We all know what can happen when electrical components get wet.

The server should sit at least 4” inches from the ground

Be sure a working electrical outlet is near. It is an important to have a power supply, a good brand is APC. Having a power supply can save you from electrical outages, blackouts, and brownouts. Having a power supply helps the server keep its power, remain stable, and unaffected when there is an outage, as well it protects your server against electrical shock. If your outage remains more than 5 minutes it is recommended to begin backing up anything deemed important and shut the computer down voluntarily as well as any other electrical attached devices.

Have a LAN line near and also a phone jack (if you plan on using the server for any dial-up services). It is not recommended to use your web service with a dial-up connection. A broadband connection or greater is recommend for optimal performance. The LAN line should never come from your wall and plug directly into your server, it should plug into a hardware firewall (usually a router with a built-in firewall).

Depending on the size of the server and the internal components the server may be extremely noisy and loud, especially with the fans going. It is suggested to have the server in a secluded location which is not near any peaceful area of the house, such as: bedroom.
Those are all some basic things to consider before hosting your own server. Hosting your own server is not an easy task, but once you have had some time and experience with it, it becomes a breeze. You will have a better web hosting experience, you will be more in tune and reliant to your customers, and you will gain greater technical aptitude. Hosting your own web server is rewarding, useful, and gives you the opportunity to host unlimited websites, databases, services, etc.

If your web traffic becomes too great for your server then it is recommended to choose an offsite web host. It is recommend to purchase a dedicated server with a quality web host. If you choose a server with the above recommendations then your server traffic should be fine for at least up to 25,000,000 page views per month. It could be greater or less depending on your operating system, your server configuration, performance, applications, and services. The point is you should be well in a position to purchase dedicated server space by the time your traffic gets too high, because if you are getting anything close to 1,000,000 page views a month you should have some competitive advertising or ecommerce income. And plus, with the knowledge you will gain from the experience you will be able to support your own server at a dedicated server (remote) location, thus cutting more overhead.

The biggest disadvantage of hosting your own web server is the uptime reliability. If your web server powers down for any reason then your website is offline. Usually web hosting companies have methods and networks to prevent this failure from affecting your website. Usually if the system goes down they have a mirror location where your site is rejuvenated and doesn’t experience much downtime. Some web hosts do not practice this method or any other fault tolerance. Imagine if a blackout or power outage occurs, then your web server could be down for hours or even days, this can affect your business greatly. There are some hosting companies who provide mirror web hosting for a small fee, I haven’t found one that is reliable yet. Or you could cross your fingers and hope for the best, until you are able to host your server outside your home on a larger network.

Hosting your own server usually is not a money-saving experience. It sometimes cost more to host your own server, when you total the up keep and maintenance. The benefit of hosting your own server is usually a better platform for your customers, because it is no longer a shared server and it gives you the ability to make global changes almost instantaneously. When your customers request more performance or specific applications, then you will be able to implement this immediately. Customers like to know that you are in control. If you tell your customers that the server will be down for maintenance from 6 a.m. – 7 a.m. then it would be best if that is when your server is down, not from 5 a.m. – 10 a.m. You know how your web host will tell you one thing and then you have to try explaining it to your customer. In the end it will benefit you to host your own web server as a web business, this helps you and your customers.


About The Author

Ant Onaf is the owner and founder of  He is an online internet marketer, web advertiser, and IT consultant.  Ant Onaf has years of IT-related experience and Internet-related experience.  His ingenuity, dedication, and passion for technology & internet marketing have made him a monumental icon in the World Wide Web.  His blog can be visited at

  • Rating


Related Articles

Comments (36)

  • Gravatar - Olly
    Olly 15:26, January 21, 2004
    What if your IP isnt static, (if you are talking about the ip which you use to connect, not your box ip) how would you get around this problem?
  • Gravatar - Mike
    Mike 02:14, January 23, 2004
    "What if your IP isnt static, (if you are talking about the ip which you use to connect, not your box ip) how would you get around this problem? "

    I was wondering the same thing, what if your IP isn't static.
  • Gravatar - matlex
    matlex 04:49, January 27, 2004
    I think its simple then.

    Add the whole IP range of your ISP.

    for example:
    If you ISP IP range

    Add just this:
  • Gravatar - bman
    bman 19:37, February 14, 2004
    any idears how to fix this ?
    tail -f /var/log/bfd_log
    Feb 14 20:35:00 xxxxxx BFD(8570): could not locate $FWFILE, aborting.
  • Gravatar - Alex
    Alex 15:03, March 16, 2004
    could not locate $FWFILE is because you didnt installed APF before
  • Gravatar - Ryan
    Ryan 23:48, July 20, 2004
    Q: what if 1, you dont have static ips, and 2, your isp has more then 2 b class ip blocks? as i dont want to add them all and open it upto all 3 1/4 million users they host.
  • Gravatar - pierre
    pierre 19:17, August 19, 2004
    how to install BFD can you write the command pls .<br />
    thank you
  • Gravatar - Nonel S. Pagdato
    Nonel S. Pagdato 09:12, October 4, 2004
    Hi, is there any BFD application for any flavor of microsoft server, hope to hear from you soon, thanks..
  • Gravatar - netcopan
    netcopan 16:58, December 19, 2004
    should we add it into cron? After I restart server it will still be there??
  • Gravatar - Steel Rat
    Steel Rat 22:05, January 12, 2005
    Also a line on how to have BFD startup automatically (unless it's tied to APF in that regard...
  • Gravatar - Alan
    Alan 22:39, January 21, 2005
    >Q: what if 1, you dont have static ips<br />
    <br />
    don't get your password wrong <br />
    <br />
  • Gravatar - Matrafox
    Matrafox 09:18, March 23, 2005
    >Q: what if 1, you dont have static ips<br />
    <br />
    Then if u type rong password and u are banned, u just have to reboot your machine to take another Ip, and just try again :)
  • Gravatar - xaver
    xaver 02:38, April 2, 2005
    "There is an included '' script that installs all files to<br />
    '/usr/local/bfd/' and places a 8-minute cronjob in '/etc/cron.d/bfd'. The setup<br />
    is really as simple as that."
  • Gravatar - Chris
    Chris 00:03, July 22, 2005
    Thanks works perfect.
  • Gravatar - robbert
    robbert 16:00, August 8, 2005
    many thnx! works perfect!!!!
  • Gravatar - Mike
    Mike 00:37, September 6, 2005
    It would help ppl if you actually gave some good examples of what configurations are preferable on a cPanel or other server, all you are doing here is stating the contents on the RFX site or in a README.
  • Gravatar - yenren
    yenren 13:05, September 11, 2005
    do we have to restart bdf manually everytime we restarted server?
  • Gravatar - grabt
    grabt 10:58, October 22, 2005
    How to stop BFD
  • Gravatar - sam
    sam 11:44, January 18, 2006
    Its realy good!
  • Gravatar - Alexender
    Alexender 08:21, March 5, 2006
    grabt:<br />
    <br />
    to stop BFD , type<br />
    <br />
    /usr/local/sbin/bfd -s <br />
    <br />
    <br />
  • Gravatar - Luis
    Luis 02:49, March 15, 2006
    I actully managed to lock myself out of my server the other day after a few typing errors when trying to login... just went and turned my linksys router off, waited a few minutes and then reconnected... I had another IP and was able to enter again.
  • Gravatar - James Tervit
    James Tervit 19:07, April 17, 2006
    Installed BFD along with a few minor changes to my ports and it stopped failed authentications dead in its tracks..... very cool
  • Gravatar - Ramkriz
    Ramkriz 20:21, July 31, 2006
    BFD is not working with the default rules. Please give me some rules for BFD.<br />
    <br />
  • Gravatar - Alan
    Alan 10:55, August 17, 2006
    does this bruteforce auto start with system reboot?
  • Gravatar - Jose
    Jose 06:52, September 14, 2006
    Q: Can i type in ignore hosts my dyndns host?<br />
    <br />
    Ex.<br />
    <br />
    Thanks for you teach
  • Gravatar - hello123
    hello123 05:51, October 25, 2006
    how to check whether BFD is started
  • Gravatar - Turkulerdiyari
    Turkulerdiyari 22:08, November 17, 2006
    I get this error :<br />
    could not locate $TLOGP, aborting.<br />
    <br />
    How can i fix this problem.
  • Gravatar - sss
    sss 11:51, January 16, 2007
    Really gud one
  • Gravatar - ePak
    ePak 22:09, February 1, 2007
    Q: Do I have to restart bfd everytime the server reboots?<br />
    <br />
    A: No. BFD is not a daemon. There is a cron that runs every 10 minutes that sweets the logs for "attacks." So basically, every 10 minutes, it runs on its own. Location of cron: /etc/cron.d/bfd<br />
    <br />
    <br />
    Q: How do I disable BFD?<br />
    <br />
    A: You can remove the cron from /etc/cron.d/bfd or you can use the uninstall script that came in the BFD tar.<br />
    <br />
    I like the script, but my question is, how many lines does it take to cause an IP block?
  • Gravatar - Radu
    Radu 15:55, February 23, 2007
    Has anybody try to install on suse ? Or
  • Gravatar - alex
    alex 22:39, March 18, 2007
    My bfd can't trace proftpd attack, why?<br />
    Can anyone help me?<br />
    Mar 18 22:23:47 ServerFTP proftpd[8035]: ServerFTP ([]) - USER anonymous: no such user found from [] to
  • Gravatar - Riaan
    Riaan 21:52, September 24, 2007
    Hi there<br />
    <br />
    How can I change the rules so that bfd will block an IP after 2 attempt and what is the default attempts?
  • Gravatar - Tim
    Tim 14:10, October 13, 2007
    RE: Alexander<br />
    <br />
    /usr/local/sbin/bfd -s<br />
    <br />
    That does not STOP bfd, it runs it with standard output. BFD doesn't run as a service, but as cron job. So you'd have to remove the cron job as staed by ePak
  • Gravatar - Sabarish......
    Sabarish...... 21:44, January 20, 2008
    Hi Riaan,<br />
    <br />
    BFD is configured to block after 10 attempts. See the TRIG value inside the files on /usr/local/bfd/rules<br />
    <br />
    Let us know through mail, if u need any further assistance.
  • Gravatar - JT
    JT 18:29, September 26, 2008
    After restarting BFD, I got the following:<br />
    <br />
    /usr/local/sbin/bfd -s<br />
    BFD version 0.9 <><br />
    Copyright (C) 1999-2004, R-fx Networks <><br />
    Copyright (C) 2004, Ryan MacDonald <><br />
    This program may be freely redistributed under the terms of the GNU GPL<br />
    <br />
    /usr/local/bfd/tlog: line 71: [: : integer expression expected<br />
    /usr/local/bfd/tlog: line 74: [: : integer expression expected<br />
    <br />
    What is the tlog bit mean? Please help...
  • Gravatar - dt
    dt 06:51, August 6, 2009
    I installed afp. ran it. see it in the log. then install bfd. ran it numerous times. nothing happens other than printing the copyright message, no matter what params I enter. i try failed logins from my other servers over and over and nothing happens. huge messages logfiles, doesn't seem to even try to scan trhem. bfd log file is completely empty. what is wrong? tried this on 2 servers, both didnt work

Add Your Thoughts is a hosting directory, not a web host.

Copyright © 1998-2018