Own Cloud with the Raspberry Pi  

Own Cloud with the Raspberry Pi

NextCloud is open source software that turns a Raspberry Pi into a cloud server. It can be used for photo galleries, media playback and data synchronisation, calendars and many other options. It can also share data with specific participants and collaborate. In this How-To we show you how to install NextCloud on Raspberry Pi and which settings you need to pay attention to.

The Project

Suitable for: Beginners with previous knowledge

Time required: 1 hour

Budget: approx. £50

What you need: Raspberry 3B+ or Raspberry A+, power supply, case, SD card

Can be extended with: an external hard drive

About the hardware and software

The Raspberry Pi 3B+ and A+ models are best suited for this project, as they have 1 GB RAM and Gigabit Ethernet. Generally when it comes to a cloud server: The more RAM available, the better.

NextCloud ensures secure hosting without third-party providers

NextCloud is free software for file hosting on your own server. You can install the service on a private server or webspace. This means that you benefit from cloud storage while retaining complete control over your own data. So you don’t have to worry about privacy issues.

NextCloud offers some valuable features such as two-factor authentication, management of different users or groups with different rights, monitoring interfaces, data encryption and more.

With plug-ins, functionalities can be added modularly, such as collaboration options, calendars, photo galleries, e-mail programs, project management tools or the analysis of geodata.

Installing NextCloud on the Raspberry Pi

To install NextCloud on your Raspberry Pi you must first set up a complete LAMP environment (Linux, Apache, My SQL, PHP). Then you need to encrypt communication using SSL certificates.

The NextCloudPi project offers a simple solution for this. This is an image that is based on Raspbian 9 and contains both NextCloud and the entire environment for it already pre-installed (Apache, the database MariaDB, PHP, etc.) Here you save some time-consuming steps.

Step 1: Transfer the Image to the SD Card

The image for NextCloudPi can be downloaded from the Own your Bits page.

Step 2: Activate SHH

SSH is an important protocol for the security of data transmission. You have two options here:

Either you activate SSH before the installation. To do this, create a file called SSH on an SD card. As soon as your server is online, you expose it to potential attacks – even during the configuration phase. The advantage of this option is that you benefit seamlessly from secure data transfer.

The second option is to set SSH activation after installation (described in step 3 of the configuration).

Step 3: Start Raspberry Pi

Now start the Raspebrry Pi and plug the finished image into it, connect it to power and Ethernet and we’re ready to go.

Helpful Resources

If you get stuck , these links share helpful installation tips.

Configure NextCloud

The next step is to configure NextCloud. You can do this either via the Terminal User Interface (TUI) or via the Web User Interface (WebUI). The first option is quicker, so we’ll use that in this example. In general, however, all settings can be made with both interfaces.

Step 1: Accessing the TUI

Connect the Raspberry Pi to a keyboard and an HDMI monitor.

Log in with this data:

User: pi

Password: raspberry

Step 2: Enable SSH

If you have not already done so, you can now activate SSH. Type sudo raspi-config and activate SSH under ‘Interfacing Options’.

Step 3: Change passwords

Do not delete the NCP user, as this is required for important operations and releases in the background. However, it is essential that you change the password.

Step 4: Make further settings

Now you can make all further settings that you need for your purposes. We recommend that you first concentrate on important security settings. These include:

  • fail2ban
  • letsencrypt
  • modsecurity
  • nc-autupdate-ncp

A complete list can be found at this link: Configuration References

Have fun with this project!

Pictures: AdobeStock #167191257, klss777


What do you think about this topic? Leave a reply:

Your email address will not be published. Required fields are marked *