FreeWeb is a software suite which creates an alternative World Wide Web.
What for? What's wrong with the mainstream Web?
Because there are many problems with the mainstream Web, and many situations when use of the mainstream Web can endanger yourself and others.
For instance, on the mainstream web,
This is where FreeWeb comes in.
Users with FreeWeb installed can publish websites on Freenet with complete anonymity.
Also, once a website is published on FreeWeb, it can't be taken down by anyone except the site's original publisher.
For example, Peter Wright (an ex-MI5 agent and author of the book "Spycatcher"), could put up a website with the book's text, and it would be impossible to prove conclusively that it came from him. More, once such website is up, it's not possible for any government to take it down.
If you were one of the brave ones who downloaded the previous FreeWeb, version 0.1a alpha, you'll see some massive changes in the way things are done.
Due to a complete restructuring of the DNS process, you'll have to create and re-insert all your sites from scratch.
Also, you'll have to completely uninstall any previous versions of FreeWeb from your system.
You will enjoy much better performance and reliability with this version.
If you find any problems, please email me - the sooner I know of any issues, the sooner I can fix them.
FreeWeb is published and distributed subject to the terms and conditions of the GNU General Public License.
You are free to modify, reverse-engineer, freely copy and distribute this code, as long as anything you disseminate contains
At this early alpha stage, FreeWeb only runs on Intel-based systems, including:
It's unknown at this stage whether FreeWeb will work on the new Windows XP plaform (but there's no reason to suspect it won't).
Down the track, though, it's likely that FreeWeb will be ported to other platforms, such as:
To use FreeWeb, you will need
Also, you'd be crazy not to have the following:
Please don't attempt to install or use FreeWeb until you've got Freenet up and running.
To download and set up Freenet, visit www.freenetproject.org/quickguide
Make sure that your node is configured with the FCP port set to 8082
Make sure your internet connection is open, and Freenet is currently running
To Publish sites to FreeWeb:
do the refresh is just after midnight GMT each day.
FreeWeb configuration is fairly simple.
Mostly, you just need to tell FreeWeb how to access Freenet on your system.
In its default state (after installing), most people won't have to change any FreeWeb settings.
If you don't know anything about web design or HTML, you can still use FreeWeb.
This version of FreeWeb gives you the option to automatically generate HTML files as needed.
If you want to create your own HTML files, do that - but make sure that your main HTML file is called index.html and located in the top level of the directory you are inserting.
But if you want it done for you, then simply don't create an index.html. If you try to publish a site without an index.html file, FreeWeb will offer to create one for you.
Thanks to the authors of the various Gnutella servent programs for the inspiration behind this one.
Basically, you can choose any name you like, as long as:
After you do this, wait
for all the file inserts to complete. The status messages window will keep
you informed of progress. Wait till you see the 'All site insertions/refreshes
completed' message come up.
If you fail to do this,
your website will become harder to find, and ultimately invisible.
More information appears in later sections.
FreeWeb websites are pretty similar to mainstream websites, except for some important differences. PLEASE READ THROUGH THESE NOW!
Before you upload your website to FreeWeb, you should test it thoroughly.
That's because once you've published it, you can only update it once a day. So if there are any mistakes, you'll be stuck with them for up to 24 hours.
If you're not already aware, it's easy to test a website without having to upload it. All you need to do is:
When you've typed in a name for your site, pointed to a valid directory, and possibly typed in some keywords, click on OK to close the dialog
When it first appears, your site's status will show as "stale", which means that you haven't yet done your round of daily updates. Provided you've chosen a site name that's not already taken, and you've pointed to a valid site directory, you'll be able to refresh your site later.
When you run FreeWeb, you'll see a white window within the Publisher dialog box. This window lists the sites you have defined on FreeWeb. If you haven't published any sites yet, the window will of course be empty.
The first step in publishing a website is to add it to your sites list. Quite simply, all you need to do is click on "Add A Site", enter the domain name, and key in 'or browse to' the directory where the site's files reside (See directions above).
(Alternatively, you can simply drag a file from Windows Explorer onto the FreeWeb window).
Auto-generation of index.html
Note - if the site directory you choose doesn't contain a file called 'index.html' at the top level, FreeWeb Publisher will ask you if you want one created for you. Therefore, it's possible to put up websites without having to know anything about HTML or website design.
I can't see the sites I've inserted
When you surf freesites, you're using a Freenet feature called 'FProxy'. Please note that FProxy is part of Freenet, not FreeWeb.
If you find that many or most sites are not coming up in your browser, you'll need to increase FProxy's 'Hops To Live', or htl, setting.
To increase FProxy's htl setting, you need to:
All correspondence about FreeWeb - bug reports, feature suggestions, news etc should be sent to firstname.lastname@example.org
FreeWeb communicates with Freenet via the Freenet Client Protocol (FCP). For more information about FCP, visit the Freenet website - www.freenetproject.org
FreeWeb doesn't use HTTP, the mainstream Web protocol. Instead, FreeWeb uses Freenet, a revolutionary Peer to Peer networking protocol.
So what's the difference?
With the mainstream Web, a web address (such as www.yahoo.com) is mapped to a single computer. A system of 'registries' (called DNS) lays out a map which enables such web addresses to be forwarded to the one computer which hosts the desired website.
But FreeWeb totally discards the concept of servers. Instead of web addresses, FreeWeb uses its own Freenet addresses.
Freenet is the ideal infrastructure for an anonymous Web. Some of the features of Freenet include:
Decentralised Storage - Information is not stored at a single location - it is stored on several different computers all over the world. Freenet is based on a Peer to Peer architecture, and doesn't depend on a central server.
Encryption - Information is always stored on Freenet in an encrypted form. Once information is stored to Freenet, it is virtually impossible to determine exactly where it is stored. Any attempt to determine its location results in such information proliferating further around the world.
Resistance to Attack - once information is written to Freenet, it can't be deleted. Due to the encryption used, not even operators of Freenet node computers can determine what Freenet information is stored on their system.
In its present form, Freenet requires more technical skill and tinkering than most people are willing to accommodate. One reviewer called Freenet "the foundations of a castle".
FreeWeb is a Freenet Client Program, or a program which uses the Freenet protocol to provide an easy-to-use service, and allows people to use a familiar paradigm - the 'World Wide Web' - for accessing Freenet.
How Does FreeWeb Actually Work?
FreeWeb keeps records of all directories and domains published to Freenet. Amongst the site records, a timestamp is kept of when each site, and each of its files, was last uploaded to Freenet.
Therefore, if a site hasn't changed since it was last uploaded, FreeWeb won't try to upload it again.
As for the upload process, this is handled transparently in the background by multiple threads which negotiate the key insertions with Freenet via the Freenet Client Protocol (FCP).
All sites published on FreeWeb can be accessed without the FreeWeb software, because they exist in the standard DBR-MSK format.
To find out the ‘traditional’ Freenet URI corresponding to your site, simply double-click on that site in FreeWeb Publisher (or right-click on the site and select ‘Properties’).
If you're quite experienced with raw Freenet, then it's likely you'll love FreeWeb or hate it. If you hate it, then just pretend it doesn't exist, and it won't bother you. But if you love it, then get involved - start creating content, reporting bugs, suggesting improvements etc.
Is there any way to trace a published website back to me?
Could be, but it's pretty damn difficult.
Also, as Freenet becomes more popular, and Freenet traffic levels increase, it will become increasingly difficult to tell between your site map updates and other Freenet-related traffic.
With all these obstacles, it would be far easier for authorities to physically break into your home (with or without a warrant) and sieze your computer.
But if you have your entire Freenet store, plus FreeWeb sites, on an encrypted virtual disk, and your system is set to unmount such disk upon any trace of unauthorised activity, this will prove very difficult too.
Is there any way to trace my surfing activities on FreeWeb?
way to do this is for someone to get their hands physically on your computer.
Unfortunately, Windows leaves all kinds of traces of your activities.
Deleting your cache and history folder isn't enough - there will still be traces. What you need is a good thorough cleanup program like Evidence Eliminator.
Also, make sure to regularly "shred" all free space on your hard drive.
Why can't I see the sites I've published
First, check that your sites are currently fresh. If not, run FreeWeb and refresh them.
But if your sites are fresh, and you can't surf them through FProxy, you'll need to increase the 'Hops To Live' setting of FProxy within Freenet.
But this is straighforward. All you need to do is:
Why do I have to update my site each day?
Because of the security within Freenet, security which protects your privacy and stops others from deleting your files, it is not possible to change a file you've uploaded. Therefore, when you upload a website, it gets today's date stuck onto it.
That's the only way there is at present to facilitate changing content on Freenet. Future versions of FreeWeb will make the 'daily update' ritual unnecessary, by providing for "today plus yesterday plus first day of month plus first day of year" timestamping scheme.
What happens if I don't update my site?
Quite simply, you site won't be visible. In future versions, FreeWeb will be smart enough to search for earlier versions of the site. But for now, if a site hasn't been updated today, it just don't exist.
When's the best time to upload a new site?
When's the best version to update my site?
As soon as possible after midnight GMT, which is: Midnight in London 10am in Australia Noon in New Zealand 4pm Pacific Standard Time (USA west coast) 7pm Atlantic Standard Time (USA east coast)
Future versions of FreeWeb will have automatic scheduling functionality built in, so they will automatically refresh your sites when needed.
Why are you using GMT time?
How do I take down a website I've published?
Stop doing the daily updates. Your site will be invisible from tomorrow. Eventually, the domain registration for your site will expire from Freenet.
FreeWeb is dedicated to all people throughout history who have ever suffered as a result of expressing an opinion.
FreeWeb is also dedicated to Amnesty International (www.amnesty.org) for your constant labours in bringing respite to prisoners of conscience.
Last but not least, FreeWeb is also dedicated to the Free Software Foundation, GNU (www.gnu.org) and other advocates of freely available software
Thanks are due to
Ian Clarke, Freenet architect and project founder, for your visionary concept of a truly free network, and your courage as you daily put yourself on the line with the world media and internet community
All other Freenet developers, (http://sourceforge.net/projects/freenet for sharing Ian’s vision, and for your loving unpaid labour and technical skill without which Freenet would not have developed as quickly as it has.
Thanks also for tolerating my naïve questions and random rantings on the Freenet mailing lists, and for your supportive answers to my questions.
Nitallica (www.nitallica.com), Phrozen Crew graphic designer, and acclaimed “Phenomenal Woman of the Web”, for your inspired artwork, and your kind support of the FreeWeb project.
Electronic Freedom Frontier (www.eff.org), for your ongoing diligence and courageous actions against those who would undermine the basic human right of privacy and free expression.
Electronic Privacy Information Centre (www.epic.org) for empowering the global internet community to defend their freedom and privacy.
FreeWeb was designed and implemented in by David McNab.
Graphic design provided by Nitallica.
Thanks go to other Freenet developers, alpha testers and reviewers for your kind support and assistance.
Last but not least, thanks also go to Jay Ferguson, of Pennsylvania State University, for your energetic feedback and interest in the project. I look forward to seeing your code on CVS real soon.
is CopyLeft (c) 2001 by David McNab
Published subject to the GNU General Public License