-
Notifications
You must be signed in to change notification settings - Fork 2
Hardware For Dedicated Freenet Nodes
While most people install Freenet on their primary desktop or laptop computer, there can be significant downsides to using Freenet this way, including difficulty keeping Freenet running 24/7, required reboots due to operating system updates, sharing the system with other people, and high power usage.
A good solution is to run Freenet on a separate "headless" computer with no screen (i.e., a server), and connect to it from your existing desktop (alternatively, some of the same hardware listed below could be used as a dedicated Freenet "workstation" as well).
This client-server set up works well in practice because most Freenet applications, including the FProxy web interface, are accessed through a web browser and do not require any other desktop software.
Additionally, it prevents Freenet from taking up limited resources on your desktop that may be needed for other things.
Most newer Intel/AMD hardware, including desktop computers, use proprietary firmware and come with a separate "black box" security processor inside that cannot be controlled or (easily) disabled. This undermines the owners control over their own computer, and can introduce potentially serious security flaws that cannot be fixed by the owner.
Note that even open source firmware like Coreboot needs proprietary "blobs" of code on newer Intel/AMD hardware (the FSP or AGESA). While this is not ideal, it is still preferable to proprietary firmware, which is often discovered leaving well known serious vulnerabilities open to attack.
A wide variety of suitable hardware is available, from low powered ARM boards, to high end rack mounted server equipment. Generally, if you can run Linux on a particular piece of hardware, and it has enough RAM, you can also run Freenet on it.
However, most of the hardware options listed below are carefully selected for one or more of the following attributes:
- Low noise/power
- Small size
- Ability to run continuously
- Ability to run without a screen/keyboard connected (this is not always possible with desktop hardware)
- Ability to run open source firmware (even if it does not ship that way by default)
- Ability to disable the security processor (on systems that have one).
There are of course many more options out there (this is not an exhaustive list), and some very nice hardware also happens to have both a security processor that cannot be disabled and runs proprietary firmware, it is up to you to decide what is most important.
There is no particular order to the hardware listed on this page, if you need help figuring out what to run Freenet on, please ask someone on our IRC channel.
- Price: $80-$250 (check Ebay)
- Power usage: ~20w
- Fanless: No
- Processor: Intel Core i7-3520M (dual core, 2.9Ghz)
- Performance: Very High
- RAM: 4GB standard, 16GB max
- Open source firmware: Optional (Coreboot with very minor "blobs")
- Security processor: Yes (Intel ME)
- Can be disabled?: Yes
These are well liked business laptops that are still available used on Ebay for very low prices, but are no longer sold as new. They can be upgraded with additional RAM or storage if needed, and are known to be able to run open source firmware and the security processor can be disabled/neutralized.
While they would make a fairly good low power Freenet node, they can additionally be used as a workstation for accessing Freenet.
Upgrade the RAM to at least 8GB (16GB if being used as a workstation), install Debian to the internal drive and install Freenet to either the internal drive or a 2nd drive installed in the drive bay.
Optionally replace the firmware with Coreboot and disable the security processor (both low risk).
- Price: $35
- Power usage: ~5w
- Fanless: Yes
- Processor: Broadcom BCM2837 (quad core, 1.2Ghz, Cortex-A53)
- Performance: Low
- RAM: 1GB (shared with GPU)
- Open source firmware: Optional (see below)
- Security processor: No
The fact that the Raspberry Pi 3 is extremely cheap, and can be configured to use completely open source firmware and software, are the only reasons it is included in this list.
Several Freenet users have run a node on these boards, however if at all possible you should choose something else for performance and reliability.
Storage is limited to the MicroSD card slot, and a few USB 2.0 ports. MicroSD cards are generally very slow, and normal cards you can buy on Amazon or at a local store will wear out very quickly when used for Freenet. USB connected hard drives are prone to disconnect from the machine unexpectedly and/or lead to errors that are difficult to diagnose.
If you still want to run Freenet on a Raspberry Pi 3, or have nothing else available, you should install Raspbian to a reliable microSD card (see the Industrial Flash section below), disable swap, and install Freenet on an SSD connected to one of the USB ports (ideally you should connect it through a powered USB hub as well).
Make sure you use a high quality power supply for the Raspberry Pi 3 itself, as cheap power supplies have been known to cause freezing/hanging and can cause the board to get much hotter than normal.
PC Engines APU2 (C4)
- Price: $128
- Power usage: ~10w
- Fanless: Yes
- Processor: AMD GX-412TC (quad core, 1Ghz)
- Performance: Moderate
- RAM: 4GB
- Open source firmware: Partial (Coreboot with AMD AGESA "blob")
- Security processor: Yes
- Can be disabled?: Unknown
The APU2 is designed for use as a network appliance (router/firewall), however it uses an AMD x86_64 processor with 4 cores, and can run standard Linux distributions such as Debian.
It has 3 separate gigabit network ports with Intel chipsets, an mSATA slot for an SSD, an internal SATA port for a hard drive, an SD card slot, 2x USB 3.0 ports, and 2 mini PCIe slots for expansion.
With the exception of the security processor, this is a very open and user-friendly board that could easily handle running Freenet. They have only 4GB of RAM, which is more than enough to run Freenet itself, but you may encounter issues if you wish to install and use Freenet plugins such as WoT or Sone.
Install Debian to a small SSD in the mSATA slot (PC Engines sells a 16GB SSD for $17), then install Freenet on a normal hard drive or larger SSD connected to the SATA port.
You will need an enclosure that is suitable for properly mounting the board (it requires a heat spreader attached to the enclosure). You may be able to mount a 2.5" SSD/drive inside the official case, but alternatively Calexium, linITX, and Varia sell enclosures for the APU2 that have space for a larger drive too.
- Price: $145/$189
- Power usage: ~10w
- Fanless: Yes
- Processor: Intel Atom E3826/E3845
- Performance: High
- RAM: 2GB
- Open source firmware: Optional (Coreboot with Intel FSP "blob")
- Security processor: Yes
- Can be disabled?: Possibly
These are primarily hobbyist platforms with expansion options, but they have fairly high performance Bay Trail Atom processors, gigabit Ethernet with Intel chipsets, and a standard SATA port for a hard drive or SSD.
They have only 2GB of RAM, which is plenty to run Freenet, but you may encounter issues if you wish to install and use Freenet plugins such as WoT or Sone.
Mount the board inside any case that works, install Debian to a reliable microSD card (see the Industrial Flash section below), disable swap, and install Freenet on a 2nd SSD/drive connected to the SATA port.
- Price: $2,400 (board+CPU only)
- Power usage: ~100w+
- Fanless: No
- Processor: IBM POWER9
- Performance: Very High
- RAM: N/A
- Open source firmware: Yes (completely open source, no "blobs")
- Security processor: No
These can also be used as a full workstation, and are fairly expensive, but are included here because of the heavy focus on security and openness:
Designed with a fully owner-controlled CPU domain, you can audit and modify any portion of the open source firmware on the Talos™ II mainboard, all the way down to the CPU microcode. An owner-controlled, CPU-based secure boot mode also is available at any time.
If you're looking for a microSD card for some of the hardware listed above, you will need to spend a bit more money than you would expect, and select one very carefully.
While most cheap microSD cards are designed for writing large photos or video sequentially to the card, they are extremely slow when used as primary storage for running Linux or Freenet, and can be "worn out" (read: destroyed) very quickly when used that way. Depending on how the system is actually configured and working in practice, a cheap microSD card may last just a few weeks.
You can usually find the right type by searching for "industrial microSD" cards, and you will want one that says it is manufactured with SLC or pSLC flash. pSLC is cheaper and should work perfectly fine, while SLC is incredibly expensive but very durable and usually a bit faster too.
A very reasonably priced 4GB pSLC SD card (not microSD) can be purchased from PC Engines (manufacturer of the APU2 listed above), for $7. However the APU2 has an mSATA slot, so if possible you should use that and buy a significantly cheaper and larger mSATA SSD instead of using the SD slot.
There are other places you can find them, such as Mouser, and Digikey.