Poor man's NAS, the Pogoplug
@ Tony Cheneau | Tuesday, Nov 13, 2012 | 5 minutes read | Update at Tuesday, Nov 13, 2012

If are looking for a cheap, customizable RAID 1 capable, multiple terabytes NAS. Look no more, because the Pogoplug seals the deal. For the price, you will not have bleeding edge performance, but you gain the level of customization of a fully featured GNU/Linux system.

Earlier this year, I set out to build my very own Linux-enabled, Do It Yourself, NAS in order to store my RAW pictures and videos. At that time, the very famous Raspberry Pi was not available and I turned to an equally good product named Pogoplug. Pogoplug is a company that sell both online storage (into the cloud) and plug computers (also named Pogoplug). The main purpose of these plugs is to connect one or more hard drive and let them be synchronized on the cloud without requiring the user to let his computer on. But what really interest us here is that you can change the default software and get access to a fully enabled Linux.

After some more browsing on the Web, I came up with the following configuration:

  • a Pogoplug (of course!)
  • two 2TB hard drives (or bigger)
  • one dual USB 3.5" SATA hard disk drive enclosure, that is an enclosure that can store two hard drives (two one-disk enclosure would have been fine as well)
  • one USB stick with a bootable the Linux system on it

What’s the cost?

In my case, at the beginning of the year 2012, all the parts were at the following price:

That is roughly $340, and I guess the prices of the hard drives went down lately (after all it’s been more than a year since the flood in Thailand). Also, you can choose smaller drives.

After more considerate thoughts, choosing the Rosewill R2-JBOD encasing is not been very good performance wise, because the encasing provide a single USB connector for driving the two disks. Thus, the two disks share a 35MB/s bandwidth, which greatly reduces the performance they can deliver. I later found out that Rosewill is also selling a RAID-1 USB encasing named R2-RAID, improving the performance when the two disks would otherwise be used in a software RAID-1 configuration.

Installing a custom Linux system has never been any easier

This part was a breeze, all I had to do was to follow the instructions on the very good Archlinux ARM wiki (and no I don’t have the pink model).

Once this is done, you have a full fledged Linux system, with all the goodness that comes with it. Because it is a NAS, you may now setup your disk encryption, Samba and/or a NFS server for local file sharing and a SSH access for remote access. You can even benefit from an IPv6 connectivity if your router provides one, or if you feel like setting up an IPv6 tunnel down to your pogoplug). This last bit is especially interesting when the pogoplug is located being an IPv4 NAT with a dynamic public address and you want to access to your plug from all over the world.

My very subjective opinion

I ran this NAS for more that 6 months now. So, I came up with a list of positive and negative aspects. Here is the good points:

  • very stable: I have yet to experience any crash.
  • very quiet: you mostly hear the sound of the hard drives spinning (I disabled the fan on the Rosewill unit, because these specific hard drives are not heating much).
  • fast enough: my wife is connected through a Gigabit Ethernet, where the device can deliver up to 17MBps, which is more than sufficient for streaming any media content..
  • great deal of software and protocols are supported: NFS, Samba¸ Burp (a backup manager), etc.
  • good connectivity: I still have two more USB ports, that I could use to plug in even more drive, if the need arises.

The cons:

  • after a power failure, the plug might try to boot on the USB drives rather than the USB stick containing the system. When this happen, you have no other choice than powering off the plug and plug it back in with the hard drives encasing disconnected.
  • NAS performances are limited by the USB 2.0 bandwidth (I seem to recall that Pogoplug released a USB 3.0 and eSATA enabled model, however, none of the functionalities were supported on ArchLinux at that time).

Overall, the cons does not make me regret my solution a single bit. I love the flexibility a Linux system provides.

Why are the performances so poor?

As I pointed out earlier, each drives appears separately when the Rosewill is set in JBOD mode (this is required if you want to set up RAID-1 at the software level). Because the encasing is connected with a single USB link, the maximum USB bandwidth is effectively divided by 2. This leaves roughly 17MB/sec per hard drive. This also correspond to the top speed I witnessed when performing sequential reads on the drive (RAID-1 on Linux read and write always occur on both disk at once).

Final conclusion

For a somewhat cheap price, you can build your own low performance but highly customizable NAS. A Pogoplug probably does not compare with a Synology NAS performance-wise. Nor does it compares with the very low price tag of a Raspberry Pi. It is just a trade-off between reliability, connectivity and customization.

Copyright by Tony Cheneau

Everything about $me

My name is Tony Cheneau and I’m currently a devops (catchy title) at ANSSI.

I was previously occupying a postdoc position at the National Institute of Standards and Technology (also known as NIST), in the Advanced Network Technologies Division. This was a really entertaining job where my main research interests are focused on wireless applications over the Smart Grid and defining new security solution for these applications.

If you are interested in my education (or in hiring me), you can check out my very formal (and not so up to date) resume.pdf.

How you can contact me

My previous projects

  • SimpleRPL: an implementation of the Routing Protocol for Low-Power and Lossy Networks (RFC 6550)
  • NDprotector: an implementation of the Cryptographically Generated Addresses (RFC 3972) and the Secure Neighbor Discovery Protocol (RFC 3971)
  • and more on my GitHub page

Former research interest

During my PhD, I studied several aspects of the Link-Layer security. through the extended use of the Secure Neighbor Discovery protocol (RFC 3971 and RFC 3972).

Other of my previous research interests included MANEMO. MANEMO is the combination of multiple research areas:

  • MANET (Mobile Ad-Hoc Network) specifies how new dynamic routing protocols enable mobile node to route packets over Mobile Ad-Hoc Networks.
  • NEMO (Network Mobility or Network that Moves) defines a protocol similar to Mobile IP where a whole network is moving.
  • AUTOCONF defines an addressing scheme and corresponding solutions to allocate addresses inside a MANET.

Publications

Thesis

  • Tony Cheneau, « Amélioration des adresses CGA et du protocole SEND pour un meilleur support de la mobilité et de nouveaux services de sécurité (Enhancing CGA addresses and the SEND protocol for a better support of mobility application and new security services) », January 2011 manuscript slides

Journals

  • Tony Cheneau, Aymen Boudguiga, Maryline Laurent, « Significantly improved performances of the cryptographically generated addresses thanks to ECC and GPGPU », Computers & Security journal, Elsevier, Volume 29, pages 419-431, June 2010. pdf

Conferences

  • Tony Cheneau, Ranganathan Mudumbai, « Adaptive key management for wireless sensor networks », IEEE Global Communications Conference (GLOBECOM), Atlanta, USA, December 2013.
  • Tony Cheneau, Andrei V. Sambra, Maryline Laurent, « A Trustful Authentication and Key Exchange Scheme (TAKES) for Ad Hoc Networks », 5th International Conference on Network and System Security (NSS), Milan, Italy, September 2011. pdf
  • Tony Cheneau, Maryline Laurent, « Using SEND Signature Algorithm Agility and Multiple-Key CGA to Secure Proxy Neighbor Discovery and Anycast Addressing », 6th Conference on Network Architectures and Information Systems Security, La Rochelle, France, May 2011. pdf slides
  • Tony Cheneau, Maryline Laurent, « Étude des solutions de proxy Neighbor Discovery sécurisées et proposition basée sur la Signature Agility » (a study of secure proxy Neighbor Discovery solutions and proposition of a Signature Algorithm Agility based solution) , 5ème Conférence sur la Sécurité des Architectures Réseaux et des Systèmes d’Information, Menton , France, May 2010. pdf slides
  • Tony Cheneau, Aymen Boudguiga, Maryline Laurent-Maknavicius, « Amélioration des performances des adresses CGA et du protocole SEND: étude comparée de RSA et d’ECC/ECDSA » (Improving the CGA and SEND protocol performances: a comparative study of RSA and ECC/ECDSA), 4ème Conférence sur la Sécurité des Architectures Réseaux et des Systèmes d’Information, Luchon, France, (best student paper award), pages 139-156, in proceedings (SAR-SSI 2009) (ISBN: 978-2-7483-4833-0), June 2009. pdf proceedings slides
  • Tony Cheneau, Jean-Michel Combes, Une attaque par rejeu sur le protocole SEND » (A replay attack on the SEND protocol), 3ème Conférence sur la Sécurité des Architectures Réseaux et des Systèmes d’Information, Loctudy, France, pages 289-300, in proceedings (SAR-SSI 2008) (ISBN: 978-2-7483-3289-2), October 2008. pdf proceedings slides

Research Report

  • Aymen Boudguiga, Tony Cheneau, Maryline Laurent-Maknavicius, « Usage and Performance of Cryptographically Generated Addresses » TELECOM and Management SudParis, 08-014 LOR, 2008. zip

Internet Drafts

Back in time, I made some propositions inside the CGA and SEND maIntenance working (CSI) group:

  • draft-cheneau-csi-send-sig-agility-02 proposes a Signature Agility Solution to the SEND protocol (RFC3971). link
  • draft-cheneau-csi-ecc-sig-agility-02 on the previous draft and proposes to use Elliptic Curve Cryptography in CGA (RFC 3972) and SEND (RFC 3971). link

Teachings

During my PhD, I happened to give some lecture:

  • Data network (ingénieurs 1ère année)
  • Virtual Private Network (Master 2 CCN, Master spécialisé SSR et ingénieurs 3ème année)

Education

  • 2007-2011: PhD held at the Institut Télécom SudParis under the direction of Maryline Laurent. This PhD was funded by a grant of the ANR for the MobiSEND project.
  • 2007: Master 2 SSI (sécurité des systèmes informatiques), University of Paris XII, obtained with mention bien
  • 2006: Master 1 d’informatique (STIC - F3I), University of Poitiers, obtained with mention bien
  • 2005: Licence 3 d’informatique (TIS - parcours des réseaux), University of Poitiers, obtained with mention bien
  • 2004: DEUG MIAS (mathématiques et informatique en application en science), University of Poitiers
  • 2002: Baccalauréat S Sciences de l’Ingénieur, lycée E. Branly de Châtellerault (Poitiers academy), obtained with mention assez bien