Coding, Web, Hydrology and more.

Building a lite private cloud disk with aria2 and File Browser

B

0x00 Introduction

Cloud disk providers like baidu, 115, yunfile have provided us with convenient cloud storage services which enables us to gain access to file across multiple platforms and devices.

Since our works are often related to word, excel, ppt and etc, we rely heavily on a desktop or laptop to produce productivity in our routine life, but there’s always sometime we don’t have our computer at hand while we need to work on some editing stuff, the only thing we can have within grasp is our mobile, so here’s the need, we need a service to help us synchronize files between computer and mobile phone, then aforementioned provider emerged, responding to the call.

They did, on one hand, help us throw away OTG cable and u disk, we don’t have to carry a heavy laptop anymore, just an iPad or a mobile phone is enough. But on the other hand, we have to realize that all these files we uploaded to cloud disk is within the scope of supervision, which means that these files are not only accessible to us but also to service’s administrator. What’s worse, our files are exposed to risk of leaking and stealing because there is and will always be vulnerability in our account, once the provider is hacked or other providers or platforms leak the password you are using, these files are not belong only to yourselves anymore, these hackers can download them easily without notifying you.

Thankfully, there’s another way to get around these risks, the answer is quite easy and simple, just build one cloud disk on your own.

0x01 FileBrowser

The File Browser is a web-based file manager. It allows you to perform basic management operations on remote’s files on anytime and anywhere, such as: create, delete, move, copy, and more. In addition to allowing you to manage your files, there are other features. It supports the management of multiple users, and each user can have files and permissions that he or she can access. It also supports file sharing, just like the web disk, you can use it to share files with your friends. You can also use it to execute some Linux commands. For example, if you want to clone a codebase in the current directory, you can use it to execute commands such as git clone/pull/push.

Because this software uses golang as backend and vue as frontend, so it can run on multiple linux branches and windows operating system. Here I will give an example on how to get it running on Linux.

Install

You have only to type in one line code in command line to install File Browser on your computer:

If you are running a docker, a docker image is also available:

In case that you want to install it manually, here’s its github repo link:

https://github.com/filebrowser/filebrowser

Configure

After installation, hit

in command line, your file browser will be up and running.

The default username and password will be admin.

File Browser runs in the foreground by default, if you want to switch it to background, you can use nohup:

In addition, if you want to kill the process:

If you want to run it automatically after booting:

and cancel automatic run:

Actually, there are more available configurations which you can feel free to alter, for instance, if you want to create database file in path you want, just hit the code

if you want to change the default listening port, you can do like this

if you want to define the path to store log

if you want to add another admin user

For more configuration details, you can visit the official site for documents : https://filebrowser.xyz/

0x02 aria2

Up to now, you have already built a private cloud disk for yourself, but if you want to go further, you can add aria2 to obtain the ability of off-line download.

aria2 is a lightweight multi-protocol & multi-source command-line download utility. It supports HTTP/HTTPS, FTP, SFTP, BitTorrent and Metalink. aria2 can be manipulated via built-in JSON-RPC and XML-RPC interfaces.

In short, similar to Thunder or other BT clients, aria2 is also a BT/PT download client. And with the help of it, you can easily download files and store them on you vps or computer. And combined with File Browser, your private cloud disk will have full capability of download media or files off-line and watch/download them on-line.

Install

If you’re running centos, you should deploy epel source first:

then install aria2 via yum:

if you’re running ubuntu, just install aria by apt-get:

Configure

you will need to create configuration file for aria2 before you run it:

after doing this, you can enter or paste following configurations into aria2.conf

p.s. in rpc-secret field you should specify a password, which will be needed for WebGUI administration, and if you want to enable ssl support, uncomment rpc-secure, rpc-certificate and rpc-private-key field, then replace the cert path and key path with your own.

Up to now, it is still inconvenient for us to add off-line download task, if you are not geek like, you may probably need a web GUI for aria2, here I would recommend you using AriaNG.

AriaNg is a modern web frontend making aria2 easier to use. AriaNg is written in pure html & javascript, thus it does not need any compilers or runtime environment. You can just put AriaNg in your web server and open it in your browser. AriaNg uses responsive layout, and supports any desktop or mobile devices.

you can download it from Github:  [download]https://github.com/mayswind/AriaNg[/download]

It is pure Html & Javascript, just put files in src to your wwwroot you will have it.

In the setting page, fill in the RPC address and key you set in aria2, then refresh the page, your off-line downloader is running without any fault.

Now, you can enjoy your private cloud disk equipped with off-line download.

About the author

EDLinus

[stay(d) for d in ('determined','diligent','devoted')]

 
By EDLinus
Coding, Web, Hydrology and more.

Meta