Linux Fu: Keep In Sync

Once upon a time, computers were very expensive and you were lucky to have shared access to one computer. While that might seem to be a problem, it did have one big advantage: all of your files were on that computer.

Today, we all probably have at least a desktop and one laptop. Your phone is probably a pretty good computer by most standards. You might have multiple computers and a smattering of tablets. So what do you do to keep your files accessible everywhere? Why not run your own peer-to-peer synchronization service? Your files are always under your control and encrypted in motion. There’s no central point of failure. You can do it with one very slick piece of Open Source software called syncthing. It runs on Windows, Linux, Mac, BSD, and Solaris. There are also Android clients. We haven’t tested it, but one caveat is that the unofficial iOS support sounds a little spotty.

The joke about the cloud — that it’s just other people’s servers — is on point here. Some people don’t like their files sitting on a third-party server. Even if your files are encrypted or you don’t care, you still have the problem of what happens if you can’t reach the server — may be on an airplane with no WiFi — or the server goes down. Sure, Google and Microsoft don’t go dark very often, but they can and do. Even if you build your own cloud, it runs on your servers. Syncthing is serverless: it simply makes sure that all files are up-to-date on all your end devices. Continue reading “Linux Fu: Keep In Sync”

Keep An Eye On Your Fermenting Beer With BrewMonitor

The art of brewing beer is as old as civilization itself. Many people enjoy brewing their own beer at home. Numerous steps must be taken before you can take a swig, but fermentation is one of the most critical. [Martin Kennedy] took up the hobby with his friends, and wanted a convenient way to monitor the fermentation temperature remotely. He started working on the BrewMonitor, a cloud-based homebrewing controller powered by an Arduino clone.

His goal was to create something cheap, convenient, and easy to set up. Traditional fermentation monitoring equipment is very expensive. The typical open-source alternative will set you back 80 euros (roughly $101), using the Arduino-sensor with a Raspberry Pi gateway via the BrewPi webserver. [Martin] did not want to go through the hassle of viewing BrewPi remotely, since it requires a home network and all of the configuration that would entail. Instead, he coupled an Arduino clone with a DS18B20 temperature sensor while using an ESP8266 module for wireless communication, all for less than 18 euros ($23). This connects to a simple webpage based on with a PHP backend (Laravel with RESTful API), a MySQL database, and an AngularJS frontend to display the graph. Once the sensor is placed into the fermenter bucket’s thermowell, the temperature is transmitted once a minute to the REST API. You can see the temperature over time (in Celsius). The design files are available on GitHub.

[Martin] would like to expand the functionality of BrewMonitor, such as adding the ability to adjust the temperature remotely by controlling a heater or fridge, and lowering its cost by single boarding it. Since the information is stored on the cloud, upgrading the system is much easier than using a separate gateway device. He doesn’t rule out crowdfunding campaigns for the future. We would like to see this developed further, since different yeast species and beer styles require very stringent conditions, especially during the weeks-long fermentation process; a 5-degree Celsius difference can ruin an entire brew! Cloud-based temperature adjustment seems like the next big goal for BrewMonitor. DIY brewers salute you, [Martin]!

[via Dangerous Prototypes]


Self-waking Computer For DIY Cloud Storage


[Dominic] decided to take control of his cloud storage by switching to OwnCloud. Unlike most cloud storage solutions, this isn’t a company offering you free space. It’s an open source software package which your run on your own machine. [Dom] didn’t want to leave his box running 24/7 as it would be unused the majority of the time. So he hacked this router to switch on the computer whenever he tries to access the storage.

Obviously this is a Wake-On-Lan type of situation, but the hardware he has chosen to use doesn’t include those features. Since he already had this TP-Link 703n on hand he decided to use it as a controller for the computer. His method is quite clever. The router is running a script that monitors the computer and the bandwidth it’s using. When traffic from the network stops, the router will issue a shutdown command within just a few minutes. It then assigns itself the computer’s IP address so that it can listen for incoming requests and use the relay on that breadboard to turn the box back on. Obviously running the embedded system is much more efficient than having an entire computer turned on all the time, and it’s WiFi capabilities mean no cords to run to the home network.

A Look At The (now Patched) Security Of [Kim Dotcom’s] MEGA Cloud Storage Service


MEGA is a new, encrypted cloud storage system founded by [Kim Dotcom] of MegaUpload fame. They’re selling privacy in that the company won’t have the means to decrypt the data stored by users of its service. As with any software project, their developers are rapidly making improvements to the user interface and secure underpinnings. But it’s fun when we get some insight about possible security problems. It sounds like the issue [Marcan] wrote about has been fixed, but we still had a great time reading his post.

The article focuses on the hashes that the website uses to validate data being sucked in from non-SSL sources using some JavaScript. Those insecure sources are a CDN so this type of verification is necessary to make sure that the third-party network hasn’t been compromised as part of an attack on the MEGA site. The particular security issue came when the hashes were generated using CBC-MAC. [Marcan] asserts that this protocol is not adequate for the application it’s being used for and goes on to post a proof-of-concept on how the messages can be forged while retaining a hash that will validate as authentic.

[Thanks Christian]