Forum Moderators: phranque
Jim
Now a general recommendation: The problem with "personal firewalls" -- software-bassed solutions -- is that they cannot detect intrusions until a connection has already been established to your machine. I recommend that anyone who runs a server have a real hardware firewall. Combination router/firewalls can be had from NetGear, LinkSys, and several other companies for less than $100. These feature "SPI" or Stateful Packet Inspection, and allow you to set all unneeded ports as 'stealth' -- they appear to be disconnected from the internet. They also monitor incoming and outgoing packets, and reject those that don't result from a legitimate 'connection session'. I use several NetGear FVS318v3 Firewall Routers -- 8 LAN ports, SPI firewall, configurable filters, and can be had for $90 plus shipping (maybe less now).
Using a hardware firewall reduces your 'footprint' on the 'net -- Only those ports needed to support necessary connections will respond. This makes it harder to find your computer using a port scan. It also takes a load off your software firewall, and leaves its log file cleaner so that real problems stand out.
Basically, the hardware firewall does a better job at stopping incoming connections, while the software firewall shines in being able to identify the programs on your machine that are requesting outgoing connections. So using both is a good approach. Check their log files occasionally to monitor your security.
To answer your basic question, the bad guys assume you have a server running because port 80 responds. And when they do an HTTP request to that port, they get back the server information sent with every HTTP response. To see what's included in this response, you can use the WebmasterWorld Server Headers Checker [webmasterworld.com]. It's also useful for checking your redirects, error responses, and other server responses. If you have a hardware firewall, you can block their IP address or address range before any connection to you machine can even be established.
Jim
[edit] Typos [/edit]
[edited by: jdMorgan at 8:16 pm (utc) on Feb. 17, 2006]