User Manual
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.
FreeWeb
creates an alternative "Top-level Internet Domain", called ".free".
Users with FreeWeb installed can browse and publish websites on .free with
complete anonymity.
Also,
once a website is published on .free, 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 at www.spycatcher.free,
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 Windows 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
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
To browse FreeWeb sites
To Publish sites to FreeWeb:
FreeWeb
configuration is fairly simple.
Mostly,
you just need to tell FreeWeb how to access Freenet on your system, and tell
your Web browser how to access FreeWeb.
In its default state (after installing), most people won't have to change any FreeWeb settings, so you'll just have to configure your browser.
You only need to change FreeWeb's settings if you connect to the internet with a proxy server, or if you want your browser to access FreeWeb on a port other than the default 8888.
If
you need to use an external proxy server, then bring up the main FreeWeb window,
and click on 'Configure'. You'll see another dialog box which will
allow you to enter your proxy settings.
If
you are already using a proxy server, you can set up FreeWeb Agent to forward
mainstream web requests to this proxy - so that you put FreeWeb Agent into
your 'proxy chain'.
Follow
these steps to configure Internet Explorer version 5 to use FreeWeb.
Note that the menus may be a little different for earlier versions.
Once
you've done this, then your browser will be ready to surf the FreeWeb.
At
this point, you should put a shortcut to FreeWeb Agent in your Start Menu/Programs/Startup
menu, so that FreeWeb Agent automatically runs on system startup.
Follow
these steps to set up your Netscape Navigator browser to surf FreeWeb.
Note - these instructions are valid for Netscape v4.72. Other versions may
require different commands.
Using the FreeWeb Gateway
Browsing FreeWeb Sites
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 domain name you like, as long as:
Try to keep the domain name as short as possible, for convenience of people surfing your site.
Subdomains are ok - as far as FreeWeb is concerned, the '.' is just another character.
What does this mean?
If you want to register the domain mp3.free, and someone else has already claimed it, you can easily register the sub-domain punk.mp3.free.
This is different to the mainstream web, where ownership of mp3.free stops others from using subdomains without your permission.
When you've decided on a domain name, try to surf on that domain in FreeWeb.
For example, if you want to put up a website (eg www.falun-gong.free), then try that address in your browser first. If a website comes up, bad news - the domain is taken. You'll need to choose another domain.
But if you get a page not found response, then that domain is yours to claim.
Huh??
If you publish a site as, say, www.nazi.free, then FreeWeb Publisher will strip off the "www" at the start, and publish the site as just nazi.free. Similarly, if you're surfing FreeWeb, and you type in the address www.communist.free, then FreeWeb agent will try to fetch the site communist.free.
Publishing FreeWeb sites is very simple - all you need to do is:
Once a day, you'll need to run
FreeWeb Publisher to 'refresh' your website.
If you fail to do this, your
website won't be visible anymore.
More information appears in later sections.
FreeWeb websites are pretty similar to mainstream websites, except for some important differences:
You must use index.html as your 'default' page
FreeWeb sites can't use CGIs, SSIs or anything else which requires a server to run a program. That's because with FreeWeb, there is no server. However, client-side code such as JavaScript is ok.
Morally, you should not place any code into FreeWeb sites (such as web bugs) which automatically triggers access to anything on the mainstream web, because this will violate the anonymity of anyone surfing your site.
To protect against the rare minority of malicious users publishing sites with web bugs, this version of FreeWeb features an anonymity filter, which alerts users to web content which may breach their anonymity.
When creating links to other files on your website, make sure you use "relative pathnames". This is just good website authoring technique, however.
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:
Open the directory (or folder) on your hard disk where you have the website files.
Click on 'index.html', and check your main page.
Click on all your links, and 'surf' the entire site on your hard drive
Make sure that all pages, and all pictures load correctly.
If your site contains any downloadable files, such as ZIP files, then click on the relevant links and make sure that you can access these files
If your website passes these test when surfing it on your hard disk, it should be ready to publish.
When you've typed in a domain name, and pointed to a valid directory, click on OK to close the "Add A Site" dialog.
When you do this, FreeWeb will first check that the domain name you've chosen is available. This may take up to 4 minutes, so be patient. If the domain is already registered, FreeWeb will tell you so, and you'll have to choose another. But if the domain is available, then FreeWeb will claim it.
When your domain is successfully registered, your site will appear in the 'Sites List' window.
When it first appears, its status will show as "stale", which means that you haven't yet done your round of daily updates - provided you've chosen a domain that's not already registered, and you've pointed to a valid site directory
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.
(Alternatively, you can simply drag a file from Windows Explorer onto the FreeWeb window).
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.
At present, FreeWeb isn't able to coexist with the FProxy filter, so you'll need to have this switched off while you're using FreeWeb.
Future versions of FreeWeb will be able to work through the filter.
FreeWeb has an inbuilt anonymity filter, to protect you against material in FreeWeb sites which may breach your anonymity.
Why is this necessary?
Because some malicious website publishers may embed web bugs, or security-breaching Javascript, into their web pages.
For instance, a web page you visit within FreeWeb may include an image from the mainstream web. If so, your browser will automatically request that image. On receiving such an image request, the mainstream web server at the other end will log your IP address, your browser, operating system, and the address of the FreeWeb site you were visiting.
Particularly malicious code can even find cookies on your system containing personal information about you, and send such information to the server as well.
Therefore, when you first use FreeWeb, it will be set by default to block all access to the mainstream Web. You will have to explicitly disable this filter to be able to surf the mainstream Web.
However, this filter is easy to turn on and off. All you have to do is bring up the main FreeWeb window, click on Configure, and de-select the filter.
Also, you can set the filter to off by default. But please take care to turn the filter back on when you are surfing FreeWeb. You can be guaranteed that while the filter is on, no details of your FreeWeb surfing activity can possibly be sent elsewhere. This safety lies in the fact that, while your browser is set to use FreeWeb as a proxy, FreeWeb will have control of all your browser’s access to the mainstream Web.
What's a 'FreeGate'?
A FreeGate is a computer system which allows other non-FreeWeb computers to use it as a FreeWeb Gateway.
For instance, if you know someone who:
then you can set up your own browser to use the proxy somesystem.cjb.net:8888.
Likewise, anyone else can do the same to you.
That way, you won't even need FreeWeb or Freenet software on your own system to be able to surf FreeWeb (although you do need FreeWeb and Freenet installed to be able to publish FreeWeb sites).
However, the wisdom of allowing your computer to be used as a FreeGate by all and sundry may be highly questionable.
For example, if someone downloads any illegal material from FreeWeb using your system as a gateway, then you can be held accountable the same as if you were personally hosting such material - this can make you liable for potentially serious civil and criminal penalties.
For this reason, for your legal protection, you should install a personal firewall program such as AtGuard, Norton Internet Security, Norton Personal Firewall, Zone Alarm Pro etc, and set it up to refuse incoming connections on ports 8082 and 8888
Future versions of FreeWeb will have a blocking feature built in, so incoming connections from untrusted machines will be refused.
At this early alpha stage, it's very likely that FreeWeb will have some bugs. Depending on your system configuration, it's even possible that FreeWeb won't even run on your system, or do anything at all. (That's what alpha testing is for - to purge out all 'show-stopper' issues before going to Beta release).
Interference with Hotmail Access
If you access your Hotmail account via Outlook Express, then you won't be able to do so while Internet Explorer is set up to use FreeWeb.
This is because, as a proxy server, FreeWeb Agent is very basic, and can't handle HTTP Mail access.
There are five possible workarounds for this:
Sorry about this, but it may take me a little while to fix this.
If you find any more bugs, or want to suggest new features, or just want to express your appreciation and/or loathing of FreeWeb, then please email me
All correspondence about FreeWeb - bug reports, feature suggestions, news etc should be sent to freeweb@rebirthing.co.nz
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 with FreeWeb, web addresses (such as www.anarchy.free) are mapped into Freenet 'keys', which are used to retrieve information from Freenet.
FreeWeb works with Freenet keys completely in the background, and gives you a totally web-based view of Freenet.
Why Freenet?
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 uses FreeNet to implement a rudimentary DNS for the 'underground' domain .free. Basically, FreeWeb contains a minimal http (web) proxy server.
When it receives mainstream web requests from a browser, it simply forwards each request out to the mainstream web.
But when it receives a request on a .free domain (eg www.mp3.free), it knows that it has to get that page from Freenet, and goes through a process of converting the URL into a normal Freenet key.
Freenet takes care of the rest – the Date-Based Redirect, the MSK mapfile lookup, and each final CHK request
When it receives the information from Freenet, FreeWeb forwards a response back to the browser
Therefore, as far as the browser is concerned, there actually 'is' a new anarchic domain called .free.
Site insertion in FreeWeb is a bit more intricate. 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?
The easiest 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 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?
Anytime.
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?
Because if sites are stamped with local time, then there will be a delay before anyone in earlier timezones can access your site. For instance, the old Javascript date-based redirection meant that users in Australia and New Zealand were constantly having to manually edit Freenet URLs and key in yesterday's date.
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.
FreeWeb
is CopyLeft (c) 2001 by David McNab
Published subject to the GNU General Public License