This guide introduces the Freenet Message System (FMS) and will take new users through the entire installation and configuration process. Later chapters cover additional tools and advanced topics.
Note: This guide is a work in progress and should be treated as such. If a section is missing information you think important, please send me an email and I will include your suggestions in future updates.
FMS allows groups of users to exchange messages in a manner similar to Usenet newsgroups. If you are not familiar with Usenet, think of FMS as an organized collection of mailing lists you can subscribe to. FMS can be accessed using any news reader. Most email clients double as news readers (Thunderbird for example) so for most users FMS will be comfortably familiar.
Perhaps the best FMS feature is a web of trust system designed to combat spam. The web of trust lets users assign a trust rating to any other FMS user. This allows users to ignore posts from anyone they believe will spam the system. More importantly, it also lets users rate the lists of other user's trust ratings for incorporation into their own trust ratings list. The web of trust allows the collective wisdom of peers to combine in overcoming spam.
First download the FMS program files.
- Windows Binary: fms-win32bin-0.3.15.zip
- Linux i386 Binary: fms-linux-i386-bin-0.3.15.tar.gz - Linked against libpoco5 (1.3.2)
Once you have downloaded the compressed program files move all of the files contained to a folder of your choice. A subdirectory of the Freenet installation directory would be a good option. Now would be a good time to read the readme file included with the installation files.
Start FMS to make sure that the binary you downloaded runs error free on your computer. Windows users should double click on fms.exe (FMS will start in a console window). For Linux user's FMS binary is identical sans the ".exe" extension (you may need to set file permissions if you cleared them when you extracted the tar.gz archive). When you are ready to stop FMS press <ctrl>-c.
The most likely error users may run across will be mismatched or missing libraries. Windows users will need to download the Windows runtime files (they are DLL's) and copy them to the FMS directory or to the system directory (something like "C:\windows\system32\").
- Windows Runtime Files: Microsoft.VC80.CRT.zip
Linux users can either update libpoco5 to match the version FMS's binary is currently linked to, or they can compile FMS to make a binary that links to their system's libpoco5 version.
FMS as a Service
FMS works like a proxy. In other words it is not accessed directly to view or post messages. Instead a news reader is used to access content. For that reason, running FMS in the background makes sense.
There are two ways to create a Windows service that will run FMS. The first is to use fms.exe options to create the service. To use that approach, open a command line prompt and execute these commands (Vista users will need to start the command prompt with admin privileges):
- cd <path to FMS directory>
- fms.exe /registerService
Now go to the Services MMC Snap-in and start the service.
The other approach involves manually creating the service at the command line. The advantage here is that custom naming, dependencies, and automatic startup can be configured. The listed commands will create the service, give it a nice name and description, set it to start automatically at boot, set a dependency so that it always starts after the Freenet service, and will start it.
- cd <path to FMS directory>
- sc create freenet-message-system binpath= "<path to fms.exe>"
- sc config freenet-message-system DisplayName= "Freenet Message System"
- sc description freenet-message-system "The Freenet Message System daemon"
- sc config freenet-message-system depend= freenet-darknet-8888
- sc config freenet-message-system start=auto
- sc start freenet-message-system
Different Linux distributions often handle services (daemons) in their own way so you will need to consult your distribution's documentation for configuration details. Most distributions use initialization scripts to start daemons and they should provide a template script to get you started.
Please send Status 417 an email with information about the correct configuration for your Linux distribution and it will be added here.
Please send Status 417 an email with information about the correct way to configure FMS as a service on OS X and it will be added here.
Once FMS is installed and running, the configuration interface can be accessed with any web browser via http on port 8080 (http://localhost:8080/). The home page displays some basic status information and should alert you when new versions of FMS are released.
One of the first things you should do is change the default web interface port from 8080 to something else like 8889. Port 8080 is commonly for local web servers. Many applications use it for that purpose and many users will likely run into conflicts so changing to a less overused port is a good idea. 8889 comes right after Freenet's default 8888 which makes it particularly easy to remember.
If your curious about reading messages posted before you installed FMS the Messages section, on the options page as several fields that will allow you to get them. Change "MessageDownloadMaxDaysBackward", and "MessageListDaysBackward" to get old messages. Set "DeleteMessagesOlderThan" as well or those old messages may be deleted soon after being downloaded. It can take several days for all the messages to download if you go very far back.
Create Your Identity
To post messages on FMS you will need to create an identity. Users can create as many identities as they wish and can even create single use identities. Go to the 'Create Identity' page and enter the name you would like to use for your identity. Once you click the 'Create' button go to the 'Local Identity' page and your new identity should be listed.
To see the components that make up your new identity click the 'Export Identities' button and view the resulting XML document in a text editor. SSK's are the keys used to post messages on FMS.
It's a good idea to backup exported identity information. Put it on removable media or even print it out so that if your computer dies or you do a reinstall you will still be able to use your identities. Never give anyone your private key because with it they would be able to impersonate you.
The address you use to publish messages on FMS is a combination of your identities name, an @ symbol, and part of its public SSK (from after 'SSK@' and up to the first ',').
The public and private SSK's from your FMS identity can also be used to publish your own Freesites and everyone on FMS will be able to verify that your the owner.
Announcing Your Identity
To ensure that others will be able to read your messages, your identity must be announced. To be considered announced an identity must be listed on at least one other identities' published trust list. There are two ways to get your identity published. The first would be to get another user to manually add your identity to their trust list. This will only work if you know someone well enough to do that.
The other method involves the use of captchas. Captchas are images of distorted text a person should be able to read but that computers hopefully can not. go to the 'Announce Identity' page and fill out about a dozen of these. With in a about a day and a half your identity should be announced on a public trust list or two.
There are many news readers that will work with FMS, but Thunderbird is a particularly good choice. An add-on has been written for it that integrates Web of Trust features into the message interface. Since it is a good choice for FMS, client configuration in the guide will focus specifically on Thunderbird. In general these settings will apply to most news readers.
Open Thunderbird and select 'Account Settings' under the 'Tools' menu. Click the 'Add Account' button on the bottom left of the 'Account Settings' window. This will open the 'Account Wizard' which will guide you through setup. Select the Newsgroup account radio button and click the 'Next >' button.
Now enter a name and the address of the identity you wish to use. On the next page enter the "server". FMS uses port 1119 by default so something like "localhost:1119" would work. That's it for the configuration so close the 'Account Settings' window.
To subscribe to FMS newsgroups right click on the FMS folder (in the folders view along the left side of Thunderbird's main window) and click the 'Subscribe...' option. When the list of groups load, check the groups you want to read and a sub folder for each will be created beneath the FMS folder.
It can take awhile for messages to download, and they will come in fits and starts, so don't get impatient if nothing happens right away.
Web of Trust
The heart of FMS's anti-spam strategy is a system called the Web of Trust (WoT). The Web of Trust allows FMS users to rate their level of trust for messages from other identites and how much weight they want to give to those identity's trust lists for when they build their own trust lists.
The underlying hope is that this will facilitate the formation of robust trust networks between those using FMS. That in turn should allow FMS users to quickly counter spammers. The theory seems sound but there have been few, if any real-world attacks on WoT's similar to the one FMS employs. We will have to wait and see how it fairs.
The web based configuration interface for your trust list is a great tool and you should use it. Go to the 'Peer Trust' page and take a moment to browse the list. Most of the columns can be ordered. It is easy to quickly see how WoT ratings are applied to identities on your list.
How Should You use the WoT?
Before you start applying ratings to other identities, there are several things you should know about the Web of Trust . The WoT is not a censorship system. Messages can not be removed from FMS by WoT ratings. The message trust you apply to an identity only effects whether or not you download posted messages from them. That personal trust level only extends to others who choose to use your trust list. If you abuse that trust others will lower your trust list trust rather quickly. Censorship by trust list isn't likely to effect many people and those that are effected are able to remedy the situation quickly.
Both message trust and trust list trust settings range from 0 to 100 with 50 being the default minimum for whether messages can be viewed or whether trust list will be used.
It's a good idea starting out to add a few positive trust list trust ratings to other identities. Select identities with published trust lists and a high trust list trust rating. Don't go over board until you know who to trust though. Once you have used FMS for a while, and have had a chance to get your bearings, it will be a lot clearer who's trust lists you should favorably rate.
By contrast to trust list trusts, be generous in applying message trust. Give small bumps every once in a while to identity's message trust when they post topical, non-spam messages. By the same token if an identity posts spam, by all means, lower their rating.
The goal is to build a comprehensive message trust list that others will want to use, and a trust list trust that will make your part of the WoT resistant to spammers.
Control boards are private boards that allow you to apply preset trust ratings to other identities. Go to the 'Control boards' page to manage your control boards. Whenever you reply to a message cc or bcc one of your special control boards to apply trust ratings to the replied to identity.
The main advantage of control boards is that they are client independent and save you the time of accessing the peer trust configuration page when you want to modify your trust list.
If you chose to use Thunderbird as your FMS news reader there is an add-on that will help make changing identity trust settings a breeze. Once installed the WoT add-on will let you change trust settings for any identity in the message view whenever you are viewing a message they have posted.