How to Install Filerun File Sharing and Synchronization on AlmaLinux

Image: Filerun

Filerun is an open-source file sharing and synchronization system that you can deploy on a server in your local network or on a third-party cloud host that allows you to upload and access files through a cloud storage platform secure. With a user-friendly web interface, you can store and manage files, photos, movies and more. It’s a great tool for any business (or home) that even includes a built-in version control system.

TO SEE: 40+ open source and Linux terms you need to know (TechRepublic Premium)

I will show how to install Filerun on AlmaLinux.

What you will need

To install Filerun you will need an instance of AlmaLinux and a user with sudo privileges. That’s it…let’s get to work.

How to Install LAMP Server

The first thing to do is install the LAMP (Linux Apache MariaDB PHP) stack. Connect to your AlmaLinux server and install Apache with the command:

sudo dnf install httpd -y

Once this installation is complete, start and activate the web server with the command:

sudo systemctl enable --now httpd

Next, we will install the database server (MariaDB). Do this with the command:

sudo dnf install mariadb-server -y

Once the installation is complete, start and activate MariaDB with the command:

sudo systemctl enable --now mariadb

Set MariaDB root user password with:

sudo mysql_secure_installation

When prompted for the current MariaDB password, just press Enter on your keyboard. You can then type y to set a new root user password. Once you’ve done that, answer the remaining questions there.

How to create the database

We can now create our database. Access the MariaDB console with:

sudo mysql -u root -p

When prompted, enter the password for the root user you just set.

Create the database:

CREATE DATABASE filerun;

Create a new MariaDB user with access to the new database:

GRANT ALL ON filerun.* to 'filerun'@'localhost' IDENTIFIED BY 'PASSWORD';

Where PASSWORD is a strong/unique password.

Dump the privileges and exit the db console with:

FLUSH PRIVILEGES;

exit

How to install PHP and ionCube

Now we need to install the required PHP version. First, enable PHP 7.4 with:

sudo dnf module enable php:7.4

Install PHP 7.4:

sudo dnf install php-fpm

Start and enable PHP-FPM:

sudo systemctl enable --now php-fpm

Install the necessary PHP modules with the command:

sudo dnf install php-mbstring php-opcache php-pdo php-mysqlnd php-gd php-xml php-zip php-json -y

Download the ionCube charger with:

cd /usr/lib64/php/modules
sudo wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz

Unpack ionCube:

sudo tar xvfz ioncube_loaders_lin_x86-64.tar.gz

Now we need to create a file which is automatically added to the Filerun configuration by PHP. Create the new file with:

sudo nano /etc/php.d/01_filerun.ini

Paste the following content into this file:

expose_php                = Off
error_reporting            = E_ALL & ~E_NOTICE
display_errors             = Off
display_startup_errors  = Off
log_errors                   = On
ignore_repeated_errors  = Off
allow_url_fopen          = On
allow_url_include        = Off
variables_order           = "GPCS"
allow_webdav_methods         = On
memory_limit              = 128M
max_execution_time  = 300
output_buffering          = Off
output_handler            = ""
zlib.output_compression = Off
zlib.output_handler     = ""
safe_mode                  = Off
register_globals          = Off
magic_quotes_gpc    = Off
upload_max_filesize   = 20M
post_max_size            = 20M
enable_dl                    = Off
disable_functions        = ""
disable_classes          = ""
session.save_handler             = files
session.use_cookies  = 1
session.use_only_cookies = 1
session.auto_start      = 0
session.cookie_lifetime  = 0
session.cookie_httponly  = 1
date.timezone             = "UTC"
zend_extension = /usr/lib64/php/modules/ioncube/ioncube_loader_lin_7.4.so

Save and close the file. Restart PHP-FPM:

sudo systemctl restart php-fpm

How to install Filerun

Access the Apache document root with the command:

cd /var/www/html

Create a new directory with:

sudo mkdir filerun

Access this directory with:

cd filerun

Download the latest version of Filerun with:

sudo wget -O FileRun.zip https://filerun.com/download-latest-centos-8

Unzip the downloaded file with:

sudo unzip FileRun.zip

Give the new system/data directory the appropriate permissions with:

sudo chown -R apache:apache system/data

Modify the SELinux contents of the system/data folder with:

sudo chcon -t httpd_sys_rw_content_t -R system/data

Make sure HTTP traffic can pass through the firewall with:

sudo firewall-cmd --zone=public --add-service=http --permanent

Reload the firewall:

sudo firewall-cmd --reload

Create an Apache configuration file with the command:

sudo nano /etc/httpd/conf.d/filerun.conf

In this file, paste the following content:

  ServerName filerun.example.com
      DocumentRoot /var/www/html/filerun
    
      Options Indexes FollowSymLinks
      AllowOverride All 
      Require all granted
   
   ErrorLog /var/log/httpd/filerun.error.log
   CustomLog /var/log/httpd/filerun.access.log combined

Save and close the file. Restart Apache with:

sudo systemctl restart httpd

How to complete the installation

Open a web browser and point it to http://SERVER (where SERVER is either the IP address or domain of the hosting server). You should be greeted with a Welcome to FileRun! the window (Figure A).

Figure A

We are almost done with our FileRun installation.
We are almost done with our FileRun installation.

Click Next and you should see everything set up and ready for installation (Figure B).

Figure B

The verification is validated and the installation is ready to continue.
The verification is validated and the installation is ready to continue.

Click Next and, in the resulting window (Figure C), fill in the necessary information for the database.

Figure C

The Filerun database configuration window.
The Filerun database configuration window.

The database name will be filerun, the MySQL user will be filerun, and the password will be the one you set in the MariaDB console. Once you have added the information, click Next.

When the installation is complete, a window containing the username and password for Filerun will appear (Figure D). Note this information and click Next.

Figure D

Our Filerun installation is complete and this is our default account credentials.
Our Filerun installation is complete and this is our default account credentials.

Click Next and you can log in with the default user credentials. You will then be presented with the main Filerun page (Figure E), where you can start downloading content at your leisure.

Figure E

Filerun's main page is ready to serve.
Filerun’s main page is ready to serve.

Congratulations, you now have locally hosted, cloud-based file sync and share ready to meet your business or personal needs.