It's almost impossible to block this stuff, and kids will get around almost any filter you can install, but there is a lot you can do to protect them. The two most important points are to reduce accidental exposure, and to create a healthy relationship between kids and parents, so that there is an open dialog and a non-guilt-ridden climate around the topic.
In more detail, you need a multi-pronged approach to make any headway with this issue of protecting kids:
- Good parenting: this is the most important aspect of the issue, obviously. This includes talking to them about this stuff and not "criminalizing" things to the point where they will hide: they need to feel free to talk to their parents about everything.
- Putting the computer in a public thoroughfare (like the living room) can help.
- Install Google Chrome, and remove icons for the Internet Explorer browser on the Desktop or in the Quick Launch toolbar or in the recent apps in the Start menu (just leave one icon in the Start menu if think you absolutely need it). Kids should use Chrome because they are less likely to get hit by "drive-by" virus installations that pop up porn when they visit random sites on the Internet -- Internet Explorer is extremely vulnerable to virus infection.
- In Chrome, disable pop-ups and Flash, since this is how a lot of unintentional exposure to porn happens: go to Settings -> Show Advanced Settings -> Privacy -> Content Settings; from there, set Plug-ins to "Click to Play", and set Pop-ups to "Do not allow any sites to show pop-ups". Now to view any site that has Flash content, you'll get a big gray box that you have to manually click on to view the content (e.g. on YouTube). Switch on HTML5 video mode in YouTube to make it a little less annoying to see videos in YouTube (so you don't have to click to view Flash), unless you're trying to make it harder in general for kids to see Flash content.
- Install the AdBlock extension for Chrome, since ads are a big source of accidental exposure to inappropriate content.
- [This one is usually missed by people]: Switch your DNS settings to use OpenDNS. This will make it impossible to browse to most adult-themed websites without circumvention measures, even if the kid can still find bad content in Web search results.
- Set up a Gmail account for the kid, and make sure the account is logged in, then lock the safesearch settings in Google search and in YouTube. If you really care about locking safesearch down, you can pay for SafeSearchLock, which locks down safe search across numerous search engines. It only costs £2, or about $3.
- Finally, you could install NetNanny. I recommend this last, because a lot of the above things can help a huge amount without resorting to filtering, and if parents trust in a filter, it can give a false sense of security. Filtering is authoritarian, which can create frustration and a feeling of inequality and injustice in kids. Filters are also porous and pretty easy to subvert if the kid is really determined. But in spite of these caveats, these days filters like NetNanny do work pretty well at both making it almost impossible to be accidentally exposed to inappropriate material in the browser, and making it very hard to intentionally browse to inappropriate material too without a parent manually typing in a password. Nevertheless, be aware of the Streisand Effect, wherein attempting to suppress information can result in the opposite of the desired effect. Also consider that if you tell kids, "don't look in the box" or "don't think about pink elephants", what are they going to do?