0% found this document useful (0 votes)
717 views

FileCloud 21.1 Installation Guide

FileCloud 21.1 Installation Guide

Uploaded by

Sergio Campisi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
717 views

FileCloud 21.1 Installation Guide

FileCloud 21.1 Installation Guide

Uploaded by

Sergio Campisi
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 177

FileCloud Server

Version 21.1
Installation Guide
FileCloud Server Version 21.1 Installation Guide

Copyright Notice
© 2021 CodeLathe Technologies, Inc. All rights reserved.

No reproduction without written permission.

While all reasonable care has been taken in the preparation of this document, no liability is accepted by the authors, CodeLathe Technologies, Inc., for any
errors, omissions or misstatements it may contain, or for any loss or damage, howsoever occasioned, to any person relying on any statement or omission
in this document.

CodeLathe Technologies, Inc.


Phone: U.S: +1 (888) 571-6480
Fax: +1 (866) 824-9584
Email: [email protected]
1. About FileCloud Server for Administrators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.1 FileCloud Sizing Guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
2. Installing FileCloud Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1 Requirements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.1 Direct Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2.1.1 Installation on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.2.1.1.1 Install Webserver as Service for Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
2.2.1.1.2 Install MongoDB as service in Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.1.1.3 FileCloud Watchdog Service . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.2.1.1.4 Windows Setup Wizard . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.2.1.1.5 Configuring Servers with the FileCloud Control Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.2.1.1.6 Configuring Optional Components . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
2.2.1.1.7 Post-Installation Steps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
2.2.1.1.8 FileCloud Retention CLI tool for Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
2.2.1.2 Ubuntu Package Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.2.1.3 FileCloud RPM Package Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
2.2.1.4 Installation on Linux Distros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
2.2.1.4.1 FileCloud CLI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
2.2.1.5 LINUX Upgrade Script . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.2.2 Virtual Machine Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.2.2.1 VirtualBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
2.2.2.2 VMware ESXi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
2.2.2.3 VMware Player . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
2.2.3 Microsoft Azure Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
2.2.3.1 FileCloud Integration with Azure File Storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
2.2.4 Amazon Web Services (AWS) Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
2.2.4.1 Seeding FileCloud for Amazon S3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86
2.2.5 Amazon GovCloud AWS Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90
2.2.6 FileCloud Docker installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99
2.2.6.1 Update Docker to 21.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
2.2.7 Alibaba Cloud Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
2.3 Post Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
2.3.1 Verify Your Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
2.3.1.1 Basic Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
2.3.1.2 Extended Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
2.3.2 Install the FileCloud License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120
2.3.2.1 Installing FileCloud License On Multiple Sites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123
2.3.2.2 Viewing Your License Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
2.3.3 Configure the Managed Storage Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
2.3.4 Enable MongoDB Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
2.3.5 Enable FileCloud SSL Mode Connection To MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
2.3.6 SSL Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
2.3.6.1 Use SSL on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
2.3.6.1.1 Create a CSR in the FileCloud Control Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137
2.3.6.1.2 Install a certificate using the FileCloud Control Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
2.3.6.1.3 Manually Create a CSR in Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
2.3.6.1.4 Manually Install SSL Certificates for FileCloud on Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
2.3.6.2 Use SSL on Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
2.3.6.2.1 Create a CSR for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 148
2.3.6.2.2 Install an SSL certificate on Ubuntu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149
2.3.6.3 Converting Existing PFX SSL Certificate to PEM SSL Certificate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
2.3.6.4 Use Let's Encrypt to Renew SSL Certificates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
2.3.6.5 HTTPS Best Practices for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153
2.3.6.5.1 Configure HTTP SSL Redirects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
2.3.7 Changing a Default Port or Web Server Setting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
2.3.8 SELinux Policies For FileCloud Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
2.4 Installation Troubleshooting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
2.5 Mount a Share that FileCloud Can Access . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
2.5.1 Mount a CIFS Share on Linux for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167
2.5.2 Mount an NFS share on Linux for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169
2.5.3 Mount CIFS Shares from Windows Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
2.6 Storage and Client Application Limits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171
2.7 Mounting CIFS and NFS Shares . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173
2.7.1 How to Mount CIFS Shares from Windows Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174
2.7.2 How to properly mount a CIFS share on Linux for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
2.7.3 How To properly mount a NFS share on Linux for FileCloud . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
About FileCloud Server for Administrators

FileCloud Server is a scalable, self-hosted, Enterprise File


Sharing, Sync and Endpoint Backup solution.

The FileCloud Server solution is a cloud-agnostic enterprises file


services platform. You can self-host it on your on-premises servers,
private data centers or you can host it on public cloud IaaS providers
like AWS, Azure or Google Cloud.

A self-hosted solution such as FileCloud Server offers the same


features and benefits of public cloud SaaS services like Box and
Dropbox, but doesn’t have many of the drawbacks of public cloud SaaS
services which includes:

Issues related to control over critical enterprise and customer


data
Concerns about security and privacy of data
Issues connected to regulatory compliance for many industries
Issues related to data residency, sovereignty and ownership of
critical data
lack of customization: organization branding and custom TOS

FileCloud Server allows you to run your own private cloud storage and
sync solution for your employees, customers and clients allowing
complete control of your organizational data. FileCloud Server also
allows you to expose your existing organizational folder and file shares
(Windows NTFS File Shares, CIFS, NFS, etc.) outside using a web
portal and mobile apps without using VPN.

The Underlying Architecture


FileCloud software is typically installed on a server (Linux or Windows). There is an admin portal to configure and manage the system.

Once configured, users can access the FileCloud installation using:

4
Web browsers
Mobile apps
Desktop sync clients to keep their desktop folders in sync

See a quick video on the FileCloud Architecture basics.

FileCloud Storage
FileCloud can manage and make available two types of storage:

Managed Storage (My Files):


Managed File ( My Files) Storage is the fully managed storage that is maintained by FileCloud. Users get storage quotas and can access,
share, sync all files in the managed storage. This is available in the "My Files" section.

Network Shares:
Admins can optionally make available existing organizational folder shares available via FileCloud. Such shares can be access via web browser
or mobile apps for instant remote access where ever you are. This is available in the "Network Shares" section.

See a quick video on the differences between Managed Storage and Network Shares.

Feature Managed Storage Network Shares

Connection HDD, NAS Drive, CIFS, NFS Network Shares, Amazon S3, CIFS, NFS Network Shares, Amazon S3, Azure Blob
Azure Blob Storage Storage

Sync Yes (Realtime) Scheduled sync 30 mins, 60 mins etc.


Real time available for folders with limited number of
files (100K)

FileCloud Drive Yes Yes

WebDAV Access Yes Yes

Offline Access Yes via Sync App Yes via Sync App's Offline Access

5
Read NTFS NA Yes
Permissions

Previous Versions Yes Yes


Support

Recycle Bin Support Yes Yes

Text Search Yes Yes, when indexing is enabled

Metadata Yes (starting with 18.1) Yes

Governance - Yes No
Retention

Governance - Yes No
Classification

ServerSync Yes (starting with 17.3) No

ServerLink Support Yes No

Path Limits No Limits Subject to 256 max path limits when network shares
are in Windows

Large Deployments
For small deployments, you can use FileCloud with Local Storage configuration.
For larger deployments, you would want to use redundant object storage systems like open stack or Amazon S3.
We also recommend using a HA configuration with a database cluster when running a system with many users.

Additional Resources
FileCloud Tour

Blog

6
Vote for new features!

7
FileCloud Sizing Guide
This document explains the hardware sizing and high availability setup for FileCloud deployments.

The FileCloud system can be deployed on physical servers


FileCloud Server can also be deployed in a virtualized environment (VMware, XEN)
The FileCloud system integrates with any NFS, CIFS, SAN appliance, or s3 compatible object-storage system for file storage

FileCloud Hardware Sizing


The following table shows the underlying usage assumptions to calculate FileCloud Hardware requirements.

The model assumes:

A user interacts 60 times per days using one of the FileCloud clients (browser, mobile app, Drive client)
Every user synchronizes data with a sync client on an average of 2.5 computers

Based on these usage assumptions, FileCloud servers need to handle:

290-300 calls per second


To support 3000 users

FileCloud Performance Model

Browser + Mobile + Drive Apps

Browser + Mobile + Drive Client Interactions Per Day 60

No of API calls per Interaction 20

Calls Per Second Per User 0.013889

Desktop Sync App

% of Users using sync app 250

Sync Check Frequency (secs) 30

Sync App Online (Hours) 24

Calls Per Second per User 0.083333

Total Calls Per Second Per User (Sync + other Apps) 0.097222

User Counts

Total users in installation 3000

Total Calls Per Second 291.67

Server Performance

Server Handles Requests Per Second 125

Servers Needed 2.33

8-16 CPU 2.6 GHz Intel Xeon with 32 GB RAM ~125-150 reqs/sec

To calculate how many web server nodes you will need to support based on number of users, you can use the linked spreadsheet.

FileCloud Sizing Model.xlsx

8
High-Availability Requirements
The following diagram explains the FileCloud High Availability Setup

Component Requirements Notes

Web App Server 1 AWS m4.2xlarge instance can handle


approximately 125-150 FileCloud requests per
second.

To handle 3000 users one will require 2-3 web


server instances with m4.2xlarge configuration.

AWS m4 instances uses processors identical to


Intel E5-2670 v3 processors.

To equate this to a virtualized environment, you


will require 3 VM nodes and each node need to
have the following specs: 8 vCPUs and 32 GB
RAM.

SSDs are recommended for application servers.

9
Load Balancer You must have a software (haproxy) or If you choose to go with HAPROXY, you must
hardware load balancer for the web application use one of the specs for the load balancer:
servers.
m4.large
In a virtualized environment, a load balancer is
equivalent to a computer with the following
specs:

1-2 vCPU
4-8 GB RAM

Database Server You will need a 3 node MongoDB replica set for You can probably use 1 TB SSD for each of the
FileCloud HA configuration. node.

Each node must have the specs of m4. It is ideal if the MongoDB node VMs can be
xlarge or equivalent configuration. housed in different physical host.
In a virtualized environment it is equivalent
to 8-16 vCPU and 16-32 GB RAM.
More RAM is better for the Database
because MongoDB keeps the working set
in RAM
SSDs are recommended for database
servers

Network For the front-end network, the following is Each server should have a dedicated
recommended: connection to:

A gigabit or 10GigE network leading to a Database cluster


load balancer and from the load balancer to File storage (CIFS, NFS or SAN).
the 3 web app servers.
At least a gigabit Ethernet

For internal networking between the servers, the


following is also recommend:

At least a Gigabit Ethernet to reduce the


potential for bottlenecks.

File Storage If an average usage is 5-10 GB per user, then


you will require:

25-30 TB space (3000 users) in your


storage appliance
Storage must be exposed as CIFS or NFS
share in the web application server
instances

10
Installing FileCloud Server
Use the following outline to understand how the installation process works.

Make sure to read the Requirements and Storage and Client Application Limits first.

Step 1: Install FileCloud Software

WINDOWS: Install FileCloud using the installer on Windows (Windows 64 bit) (or)
LINUX (Debian/Ubuntu, CentOS/RedHat): Install FileCloud using the easy Installation script (Recommended Option)

Other options
Install FileCloud using the provided Virtual Machine (VMWare / VirtualBox etc)
Manual install from scratch on Debian/Ubuntu or CentOS/RedHat/Fedora
Install FileCloud on Amazon AWS
Install FileCloud on Amazon GovCloud AWS
Install FileCloud on Linux offline - right-click here to download the tool.
Ubuntu Package Installation

After installation, if Apache will not start, see FileCloud not starting on Windows.

Step 2: Verify the FileCloud Installation

Open the FileCloud Install page at http://<site>/install (typically http://127.0.0.1/install) and go through the BASIC and EXTENDED checks.
Note that some checks might fail, but you can resolve them later in the Admin Portal Settings.

Go to Verify Your Installation

Step 3: Log in to the Admin Portal

Open the FileCloud Admin website at http://<site>/ui/admin/index.html


Admin Username is admin, Admin Password is password

Go to Extended Checks, Step 6

Step 4: Install Your License

Your FileCloud license is a document that provides legally binding guidelines on the use and distribution of your newly installed FileCloud software.

Go to Install the FileCloud License

Step 5: Set the Managed Storage Path

Set the storage path where FileCloud stores its all its files. This only applies if you are using Local Storage.
If you are going to use OpenStack or Amazon S3, then you don't need to set this path.

Go to Configure the Managed Storage Path

Step 6: Proceed to Site Setup

Use the Administrator Guide to get your site ready for users to log onto and use.

Go to the Administrator Guide

11
Windows Defender October 2020

Microsoft has changed some rules for virus detection. As a result, some files are now falsely identified as viruses.

This can lead to the following errors in FileCloud:

New file uploads fail.


Files that have already been uploaded are quarantined or deleted so that users can no longer access them.

We recommend excluding the following directories from the scan in Windows Defender or other AV programs:

FileCloud temporary folders C:\xampp\tmp and C:\xampp\htdocs\scratch (If you installed FileCloud on a different drive, please use
that instead of C:\)
Managed Storage Location (if you do not use object storage / S3): (FileCloud Admin Portal -> Settings -> Storage -> Storage Path)

You may also refer to the following URL for more information on excluding folders in Windows Defender: https://support.microsoft.com/en-us
/help/4028485/windows-10-add-an-exclusion-to-windows-security

Are you migrating to FileCloud?

No matter which edition of FileCloud you are using, it is easy to transfer your data after your FileCloud site is setup.

Migrating Files from Egnyte to FileCloud

For more information, read:

About FileCloud Server for Admins

About FileCloud Server for Users

12
Requirements
The ability to support FIPS licenses is available in FileCloud Server version 18.2 and later.

To prepare your environment for FileCloud, make sure that you have the required components.

In the following section, to display more information, click on a topic.

FileCloud Server now supports FIPS licenses in version 18.2 and later.

Enterprises who are subject to the FIPS regulations must install and run a FIPS-enabled operating system. For example, CentOS in FIPS
mode.

When using a FIPS-enabled license, FileCloud Admins will see in the Admin Portal:

Running in FIPS mode is prominently displayed


SSO features are hidden
Storage encryption option is always shown

To run FileCloud, use one of the following supported operating systems:

Windows Server 2008 R2 64 bit, Windows 2012 64 bit (& R2), Windows Server 2016
Ubuntu 16.04 LTS (from FileCloud release v15 onwards)
CentOS 7.0 onwards
RHEL 7.0 onwards

For additional options to install on AWS/Azure, see the Installation page.

Additionally, FileCloud can be run inside a Virtual Machine that can be hosted in almost any operating system including Mac OSX.

You do NOT need to install the software listed in this section.

This software is only listed to inform you of what is installed by the FileCloud installation wizard.
The components are identified as either Required or Optional so you can plan on which optional components you will want to install.
All components can be managed after running the installation wizard using the FileCloud control panel.

Server Software

The following required software is automatically installed by FileCloud's Windows and Linux installers.

Software Required or Optional Minimum Version Recommended Version Functionality

Apache Required 2.2 and above 2.4.16 and above Cross-platform Web Server

PHP Required 7.2 7.2 in Linux and above Server-side scripting language
designed for Web
Anything below or above 7.1 development
is not supported

Mongo Required 3.4.x 3.4 Document database that is


scalable and provides
querying and indexing

PHP-MongoDB driver Required 1.2.3 and above 1.2.3 and above Provides a minimal API for
core driver functionality

13
Memcached Optional Version included in the Version included in the Memory object caching
installer installer system that provides pre-
caching of NTFS permissions
and encryption

PHP ionCube Loader Optional Version included in the Version included in the Encodes and secures PHP
Extension installer installer files

Solr Optional Version included in the Version included in the Enables content search with
installer installer the following features:

Content search for file


types such as txt, pdf,
doc, docx, xls, xlsx, ppt,
pptx
Regex support for file
/folder name searches

Supported Browsers for UI 1.0


Internet Explorer 9 and above
Google Chrome 25.0 and above
Mozilla Firefox 24 and above
Safari 11 and above

Supported Browsers for UI 2.0


Microsoft Edge 15 and above
Google Chrome 55.0 and above
Mozilla Firefox 52 and above
Safari 11 and above

For FileCloud Sync and FileCloud Drive applications, Windows 10 is required to run properly.

Small Installations (~ 100 users)


Intel(R) Xeon(R) CPU E5-2630L v2 or equivalent Quad Core CPUs (2 GHz or higher) (Higher the better depending on additional
configuration such as indexers, SOLr, Preview services etc)
Windows: 16 GB of RAM (higher is better) Linux: 16 GB (higher is better)
Storage can be from Physical Disk, SAN, NAS etc
Free disk space as needed

Larger Installations
To support FileCloud, you might need to setup more powerful configurations to include the following:

Use redundant object storage systems like open stack or Amazon S3


Use an HA configuration with a database cluster when running a system with many users

Ports
The following are the ports necessary for the operation for FileCloud.

Port No Purpose Internal/External Remarks

80 HTTP Traffic External


Port used for http traffic from all
clients such as browser,
FileCloud sync, FileCloud drive
etc.,
This port should be opened to
WAN if clients needs to access
FileCloud over internet.
For Production, Plain HTTP is
NOT RECOMMENDED. ONLY
SSL should be used.

14
443 HTTPS Traffic External
Port used for https traffic from all
clients such as browser,
FileCloud sync, FileCloud drive
etc.,
This port should be opened to
WAN if clients needs to access
FileCloud over internet.

389 LDAP Internal


Optional port needed if FileCloud
users needs to be authenticated
against Active Directory or LDAP
server
This port need not be opened to
WAN, as only FileCloud server
will be using it within LAN.

636 LDAP SSL Internal


Optional port needed if FileCloud
users needs to be authenticated
against a secure Active Directory
or LDAP server
This port need not be opened to
WAN, as only FileCloud server
will be using it within LAN.

If MongoDB is set to run on a different computer from the Webserver , then Port 27017 on the computer running MongoDB must be
accessible from the Webserver computer in order for it to connect.,

Configuration

Component Configuration

IP Address You need a public IP for the server running FileCloud. Typically, this
means you need a static IP for the server as dynamic IPs provided by
most ISPs keep changing.

Network Connection You need a good quality network connection to the FileCloud Server.
Minimum should be 512 Kbps upload and download for good
experience. The faster the connection the better the experience.

Domain Name You will typically need a top level domain name. For example: cloud.
mycompany.com or mycompanycloud.com. You can purchase a domain
name from any domain registrar and then point the DNS for that domain
name to the public IP of the server that is running FileCloud.

SSL Certificate You will also need a valid SSL certificate for your domain name to setup
and use https with your filecloud server for best security.

15
Installation
Use the following links to install a new instance of FileCloud Server.

Make sure to read the Requirements first.

WINDOWS: Install FileCloud using the installer on Windows (Windows 64 bit) (or)
LINUX: Install FileCloud using the installation script

Installation Options

Direct Installation
Virtual Machine Installation
Microsoft Azure Installation
Amazon Web Services (AWS) Installation
Amazon GovCloud AWS Installation
FileCloud Docker installation
Alibaba Cloud Installation

16
Direct Installation
This section explains the procedure to install FileCloud in your system.

Select your system from the links below.

For help on registering your company and downloading the installer, see the Registration page.

Installation on Windows
Ubuntu Package Installation
FileCloud RPM Package Installation
Installation on Linux Distros
LINUX Upgrade Script

17
Installation on Windows
Installation on Windows (64-bit)
The installation process on Windows includes the following steps:

1. Run the Setup Wizard


2. Use the FileCloud Control Panel to configure servers
3. Use the FileCloud Control Panel to configure optional components
4. Complete Post-Installation Steps

18
Install Webserver as Service for Windows
By default, the Webserver that is shipped part of the FileCloud installation runs as a normal process. If the user running the application logs out the
application will exit. To prevent this, you can run FileCloud Webserver as a service.

Install as a Service
Click on "Make Service" link in the Control Panel. It will be installed as a service. You can then click on "Start" to start the service.

Note, if you are making existing network shares accessible to FileCloud, we suggest you modify the service "Log on" permissions to run as an
user account with full privileges to the network share ( See screenshot below).

19
Alternate way to install as a service, open an administrator command prompt

cd c:\xampp\apache\bin

httpd.exe -k install

Remove Apache Service

cd c:\xampp\apache\bin

httpd.exe -k uninstall

20
Install MongoDB as service in Windows
By default MongoDB in Windows runs as a process. If the user running the application logs out, the database process will exit. To prevent this, you can run
the mongodb database as a service.

Install FileCloud
Before making MongoDB as a service, install FileCloud using the windows installer. By default FileCloud will be installed under C:\xampp. If you have
manually installed FileCloud or installed FileCloud on a different path, update the paths accordingly in the next steps.

Make MongoDB run as Windows Service

21
Alternate Installation Method Step 1: Create MongoDB Config File
Update a file called mongodb.conf under C:\xampp\mongodb\bin, and use absolute paths for the locations of logpath and dbpath to be absolute paths.

It is important when running mongodb as a service that the dbpath and the logpath are provided as full paths instead of relative
paths. ie c:\xampp\mongodb\bin\data

Mongodb configuration file

# mongodb.conf

# Where to store the data.


dbpath=C:\xampp\mongodb\bin\data

#where to log
logpath=C:\xampp\mongodb\bin\log\mongodb.log

#append log
logappend=true

#ip address
bind_ip = 127.0.0.1
port = 27017

# Enable journaling, http://www.mongodb.org/display/DOCS/Journaling


journal=true

# Don't show mongodb http interface


nohttpinterface=true

# Enable mongodb rest interface


rest=false

#quiet mode
quiet=true

Here update values of logpath and dbpath if necessary.

Alternate Installation Method Step 2: Create MongoDB Service


To install MongoDB as a service, open a command prompt with administrator access (this is important), and run the following command.

Creating MongoDB Service

C:\> cd C:\xampp\mongodb\bin
C:\xampp\mongodb\bin> mongod.exe --config C:\xampp\mongodb\bin\mongodb.conf --install

You can start the MongoDB service using the FileCloud Control Panel.
Now the service will start automatically on machine reboots.

Remove MongoDB Service

Removing MongoDB Service

C:\xampp\mongodb\bin>mongod.exe --remove

22
FileCloud Watchdog Service
FileCloud Watchdog Service is an service for Windows that automatically monitors the availability of Apache Webserver and the MongoDB Databases and
can restart them if they become unavailable or unresponsive.

FileCloud watchdog service is only available starting from v12.0


FileCloud watchdog service monitors OpenOffice service starting from v13.0

Installation
1. Open a Windows Administrator Command Prompt
2. Navigate to c:\xampp folder (change it to the path XAMPP folder exists)
3. Run the following to register the service

cloudwatchdog.exe /registerService /displayName="FileCloud Watchdog Service"

4. Start the service

net start cloudwatchdog

Uninstall
1. Open a Windows Administrator Command Prompt
2. Navigate to c:\xampp folder (change it to the path XAMPP folder exists)
3. Run the following to register the service

net stop cloudwatchdog

4. Start the service

cloudwatchdog.exe /unregisterService

Default Configuration
To change parameters related to the watchdog, adjust the values in the cloudwatchdog.ini file in the xampp folder.

frequency (in seconds) controls how fast the watchdog checks the availability of services
serverurl determines the URL to use to check availability

; Settings for FileCloud Watchdog


[settings]
frequency=60
serverurl=http://127.0.0.1

OpenOffice Configuration

To monitor the open office service, add the following entries to the ini file and adjust accordingly:
Make sure the oowatchdogcheck.php and oowatchdogsample.txt files are present in the resources\backup folder.

23
; Settings for FileCloud Watchdog
[settings]
frequency=60
serverurl=http://127.0.0.1
ooservicename=ooservice
ooscriptpath=c:\xampp\htdocs\resources\backup\oowatchdogcheck.php

Troubleshooting
A log for FileCloud Watchdog Service is inside the XAMPP folder under the filename 'cloudwatchdog.log'

24
Windows Setup Wizard
The installation process on Windows includes the following steps:

1. Run the Setup Wizard


2. Use the FileCloud Control Panel to configure servers
3. Use the FileCloud Control Panel to configure optional components
4. Complete Post Installation Steps

Use these steps to install FileCloud on a Windows 64-bit system.

During installation you will be asked to install the Microsoft Visual C++ Redistributable Package if it does not already exist.
This installs runtime components of Visual C++ Libraries required to run applications developed with Visual C++ on a computer that does not
have Visual C++ installed.

You can only install FileCloud on the root of the hard drive.

To install FileCloud directly:

1. Download the installer.


2. Locate the FileCloudSetup.exe file and run it.
3. On the Welcome screen, click Next.
4. In the select Installation drive box, verify that the root of the hard drive is listed, and then click Install. (For example, the location can either be c:
\xampp, or d:\xampp etc).
5. If a dialog pops up during installation and asks you to install VC_redist.x64.exe, click Install.
6. After installation is complete, the FileCloud Control Panel opens.

25
Configuring Servers with the FileCloud Control Panel
The installation process on Windows includes the following steps:

1. Run the Setup Wizard


2. Use the FileCloud Control Panel to configure servers
3. Use the FileCloud Control Panel to configure optional components
4. Complete Post Installation Steps

When the Setup Wizard finishes successfully, the FileCloud Control Panel opens so that you can configure the servers that FileCloud requires to function.

The order you should start and configure these servers is:

1. Make and Start the Database Service


2. Configure and Start the Message Queue
3. Make and Start the Webserver
4. Configure and Start the Cron Task

By default the Database and Webserver run as a process.

If the user running the application logs out, the process will exit.

To prevent this, you can run these servers as a service.

Start the Database Server


FileCloud Server uses MongoDB as the database server.

MongoDB is a cross-platform document-oriented database program.

Classified as a NoSQL database program because instead of storing information in tables, as with traditional relational databases, MongoDB
stores structured information in JSON format with dynamic schemas
This makes integrating information in applications much easier and faster
For more details, visit the MongoDB web site

This software is installed by the FileCloud installation wizard, you only need to configure it and start it.

A PHP-MongoDB driver is also installed with FileCloud Server to provide a minimal API for core driver functionality
By default MongoDB in Windows runs as a process
It is recommended that you run MongoDB as a service instead of a process
If the user running the application logs out, the database process will exit. To prevent this, you should run the MongoDB database as a service.

26
FileCloud requires MongoDB. You must make this service and start it running before moving on to the next step.

To make and start the Database service:

1. In the FileCloud Control Panel, in the Server section, for Database, click the Make Service link.
2. On the Service Installed OK window, click OK.
3. In the FileCloud Control Panel, in the Server section, for Database, click the Start button.
4. In the FileCloud Control Panel, in the Server section, for Database, next to Database, verify it says Running.

If the Database service doesn't start, then another process could be using that port.
To check which program is using that port, you can follow the instructions here.

Start the Message Queue


A message queue is a form of service-to-service communication that is not concurrent.

Message queues are used in serverless and microservices architectures.


Messages are stored in the queue until they are processed and deleted.
Each message is processed only once.
Message queues can be used to separate heavyweight processing workloads
Message queues can buffer work or process work in batches
Message queues can smooth spiky workloads

FileCloud requires MongoDB. You must make this service and start it running before moving on to the next step.

To configure and start the Message Queue service:

1. In the FileCloud Control Panel, in the Server section, for Message Queue, click the Install link.

2.

27
2. In the FileCloud Control Panel, in the Server section, for Message Queue, click the Start button.
3. On the Service Started OK window, click OK.
4. In the FileCloud Control Panel, in the Server section, for Message Queue, next to Database, verify it says Running.

If the message queue is not running or clearing


If the message queue is not running or clearing, when you log in to FileCloud or refresh it, the Serial Queue Count alert, shown below, or a similar Parallel
Queue Count alert appears. The Serial Queue Count alert appears when there are more than 10,000 items in the serial queue; the Parallel Queue
Count alert appears when there are more than 100,000 items in the parallel queue.

In either case, begin troubleshooting by confirming that the FileCloud control panel indicates that the Message Queue service has been started. If it has
not been started, click Start (see the above image). It may take some time for the alert to disappear since the message queue must delete all previously
processed messages before starting again.

Start the Webserver

FileCloud requires Apache Webserver. You must make this service and start it running before moving on to the next step.

To make and start the Webserver service:

1.

28
1. In the FileCloud Control Panel, for the Webserver, click the Make Service link.
2. On the Service Installed OK window, click OK.
3. In the FileCloud Control Panel, for the Webserver, click the Start button.
4. In the control panel, next to Webserver, verify it says Running SVC.

If the WebServer service doesn't start, then another process could be using that port.
To check which program is using that port, you can follow the instructions here.

Install and Start the Cron Task


When the Setup Wizard finishes successfully, the FileCloud Control Panel opens so that you can complete the installation steps. During installation you will
be warned that Cron Task is only needed if a FileCloud Scheduled Task is not already setup. However, Cron Task is required. if you try to run the
Installation Check or log into the Admin Portal without installing Cron task and try to enable Team Folders, for example, the process will fail. Other
components on the FileCloud server rely on the Cron Task as well, so this must be installed and started.

FileCloud requires the Cron Task. You must Install this service and start it running before moving on to the next step.

To install and start the Cron Task service:

1. In the FileCloud Control Panel, for Cron Task, click the Install link.
2. On the Confirmation Installation window, click Yes.
3. On the Service Installed OK window, click OK.
4. In the FileCloud Control Panel, for Cron Task, click the Start button.
5. In the control panel, next to Cron Task, verify it says Running SVC.

29
Configuring Optional Components
The installation process on Windows includes the following steps:

1. Run the Setup Wizard


2. Use the FileCloud Control Panel to configure servers
3. Use the FileCloud Control Panel to configure optional components
4. Complete Post Installation Steps

Install Optional Components


After a successful installation check, the basic FileCloud service is ready.

Before running post-installation checks on everything that is installed, you can add any of the following optional services to include them in the post-
installation verifications:

FileCloud Helper
Memcache
Document Preview
Content Search

Because these components are optional, they can be added or removed at any time from the FileCloud Control Panel.

Administrators can enable content search to provides users with the following features:

Content search for file types such as txt, pdf, doc, docx, xls, xlsx, ppt, pptx
Regex support for file/folder name searches

Content Search uses Solr, and Solr in turn uses Java.

Before installing Content Search, you must install the correct Java Development Kit (JDK).

Installing Content Search

FileCloud Helper, Memcache, and Document preview do not require any pre-installation steps.

To install and start any of these optional service:

1. In the FileCloud Control Panel, for the service you want to use, click the Install or Make Service link.
2. On the Service Installed OK window, click OK.
3. In the FileCloud Control Panel, for the service you just installed, click the Start button.
4. In the control panel, next to the service you installed, verify it says Running or Running SVC.

30
Post-Installation Steps
The installation process on Windows includes the following steps:

1. Run the Setup Wizard


2. Use the FileCloud Control Panel to configure servers
3. Use the FileCloud Control Panel to configure optional components
4. Complete Post Installation Steps

Complete Post Installation Steps


At this point, the basic FileCloud service is ready to be tested. Before logging in to the Admin Portal, you should verify that are no port conflicts or issues
with Apache, Mongo DB, or Cron Task. Unless these required services are running you will not be able to complete tasks in the Admin Portal. Therefore,
use the following steps to verify that what you have is installed is running without issues.

To perform an post-installation checks:

1. In the FileCloud Control Panel, next to Webserver, verify it says Running SVC.
2. In the FileCloud Control Panel, next to Database, verify it says Running.
3. In the FileCloud Control Panel, next to Cron Task, verify it says Running SVC.
4. In the FileCloud Control Panel, next to Initial Setup, click Install Check.
5. If successful, you should see the Getting Started screen.
6. Follow the instructions in Post Installation to complete your cloud setup.

31
FileCloud Retention CLI tool for Windows
Requirements
Steps to start the CLI tool
Example - Deleting a policy
Running the retention tool for multi-tenancy

Requirements
FileCloud Server - Windows
Retention folder created under (C:\xampp\htdocs\resources\tools\retention)
retentionclihandler.class.php and retentionmanager.php under (C:\xampp\htdocs\resources\tools\retention)
Access to Windows Command Prompt

Steps to start the CLI tool


1. Access C:\xampp\htdocs\resources\tools\retention
2. Select the tools folder – Shift + Right-Click – Open Command Window Here.
3. Once the command window comes up paste the following c:\xampp\php\php.exe retentionmanager.php
On step 3 If the files are not located on the C drive change the path accordingly.
4. Once Steps 1-3 have been completed the following should appear.

5. Do Remove, add, list, show or others follow the instructions provided step 4 Screenshot.

Example - Deleting a policy


1. Follow the steps previously provided from 1-4

Running the retention tool for multi-tenancy

32
To run the retention tool for the non-default site in multitenancy, use the -h (host) parameter:

In the command line, enter the command for running the tool with -h followed by the site name, such as:

php .\retentionmanager.php -h site2.localhost

If you do not use the -h parameter with multitenancy, the command is run on the default host.

33
Ubuntu Package Installation
Ubuntu Package Installation

New Installation of FileCloud v19.1 with this method is fully compatible with Ubuntu/Centos Servers.

We have tested the v19.1 in the following versions:

Ubuntu 16.04 LTS


Centos 7.x

Note

The commands should be executed with root permissions.


Latest MD5 checksum for filecloud-liu.sh

filecloud-liu.sh a473c77a672b76f385366e6f6e993ecc

1) Download the installer script


wget http://patch.codelathe.com/tonidocloud/live/installer/filecloud-liu.sh

2) Verify downloaded script checksum


md5sum filecloud-liu.sh

3) Ensure the checksum output from step 2, matches the latest MD5 checksum value posted in the top note
section.
------DO NOT USE THE SCRIPT, IF THE CHECKSUM VALUES DON'T MATCH.--------------

4) If the checksum matcher, start the installer


bash filecloud-liu.sh

The above script will automatically fetch the OS disregard of debian or rpm version and will install the FileCloud instance.

Review Post Installation to complete the installation

34
FileCloud RPM Package Installation
FileCloud Installation with RPM

If the FileCloud Instance doesn't have access to Internet, we recommend that you contact our support team for assistance.

The below steps are designed for a FileCloud instance which is accessible to external network

New Installation of FileCloud v18.1 with this method is fully compatible with Ubuntu/Debian/Centos Servers.

We have tested the v18.1 in the following versions:

Ubuntu 16.04 LTS


Centos 7.4
Debian 8(Jessie)

Note

The commands should be executed with root permissions.


Latest MD5 checksum for filecloud-liu.sh

filecloud-liu.sh a473c77a672b76f385366e6f6e993ecc

1) Download the installer script


wget http://patch.codelathe.com/tonidocloud/live/installer/filecloud-liu.sh

2) Verify downloaded script checksum


md5sum filecloud-liu.sh

3) Ensure the checksum output from step 2, matches the latest MD5 checksum value posted in the top note
section.
------DO NOT USE THE SCRIPT, IF THE CHECKSUM VALUES DON'T MATCH.--------------

4) If the checksum matcher, start the installer


bash filecloud-liu.sh

The above script will automatically fetch the OS disregard of debian or rpm version and will install the FileCloud instance.

Review Post Installation to complete the installation

35
Installation on Linux Distros
The installation script for new Installations of FileCloud Server is available in version 18.1 and later.

The script method is compatible with:

Ubuntu: 16.04,18.04, 20.04


Centos: 7.x
RHEL: 7.x 8.x
Debian: buster stretch

The script method is not compatible with:

Ubuntu 14.04
CentOS 8.x
CentOS 6.x
RHEL 6.x

For FileCloud to be fully functional, specific versions of packages must be installed on Linux Distros.
In some cases, customers have updated packages using the apt upgrade command, and when older versions of packages were removed and
updated, FileCloud was no longer fully functional.
Therefore we strongly recommend that you make a backup or snapshot of the server before performing a linux package update.

As an administrator, you can use the provided script to automatically install a FileCloud instance regardless of the version (Debian, Fedora, etc).

The script opens a basic interface to step you through the installation or upgrade process.

To navigate the interface, use the following keyboard keys:

Key Action

Arrow UP scroll through the previous options in a field

Arrow Down scroll through the next options in a field

Spacebar move to the next field

Tab selects the highlighted option

Install FileCloud on LINUX from a Script

Requirements:

The FileCloud instance must be accessible to the external network (Internet)


The script commands must be executed with root permissions

If the FileCloud Instance doesn't have access to Internet, please contact our support team for assistance.

Step 1. To get the installation script and run it, type the command shown
wget http://patch.codelathe.com/tonidocloud/live in the first column.
/installer/filecloud-liu.sh && bash filecloud-liu.sh

36
Step 2. On the Installer and Upgrade screen, to start the process and
select Proceed, press Tab.

If you are having problems, to click Cancel, use the spacebar to


highlight Cancel, and then press the Tab key.

Step 3. On the Welcome screen, to click OK, press the Tab key.

To review the policies you are agreeing to:

The terms of service can be found here: https://www.getfilecloud.com/tos/

The privacy policy can be found here: https://www.getfilecloud.com/privacy/

Step 4. After the installation is set up, on the Installer screen, to start the
installation and select Proceed, press Tab.

If you are having problems, to click Cancel, use the spacebar to


highlight Cancel, and then press the Tab key.

37
Step 5. On the Configure Additional Installations screen, Solr and Preview
are selected by default, as indicated by an asterisk.

a. To keep all of the defaults, use the spacebar to highlight


OK, and then press the Tab key.

b. To choose not to install an option, use the spacebar to


highlight Solr or Preview, and then use the UP or DOWN
arrow key to clear the asterisk from the option. When the
option is set the way you want, press the Tab key.

c. When you have specified which options you want to


install, use the spacebar to highlight OK, and then press the
Tab key.

Notes

For setting options:

= Yes, I want to install this option

= No, I do NOT want to install this option

What is Solr? What is Preview?

Solr is an open source enterprise Document Preview allows a user


search platform. It provides users to view the supported file types
with the following features: directly in the User Portal via a
web browser.
Content search for file types
such as txt, pdf, doc, docx, This feature uses LibreOffice to
xls, xlsx, ppt, pptx do the document conversion.
Regex support for file/folder
name searches

Step 6. All selected options will be installed.

Step 7. FileCloud will finish installing.

When installation is complete, you can use filecloudcp (FileCloud


Control Panel) to install any options you chose not to install originally.

Use filecloudcp

38
FileCloud CLI
A new CLI tool for Linux Distros called filecloudcp is available in FileCloud Server version 18.1 and later.

FileCloud Command Line Usage

The filecloudcp tool helps you find the current version running in the server, check for updates, and upgrade your FileCloud instance from command line.

Filecloudcp includes the following options:

# filecloudcp

usage: filecloudcp

-v | --version : Show the current version of FileCloud installed


-c | --checkforupgrade : Checks for FileCloud Upgrades
-u | --runupgrade : Upgrades FileCloud Version
-p | --resetpassword : Performs FileCloud Admin Password
-h | --help : This message

Below are the outputs of the filecloudcp command

Check for version running on the server

#filecloudcp -v

18.1.0.611
Copyright (C) 2018 CodeLathe Technologies, Inc.
This is Commercial software.
Enterprise File Sharing, Sync and Mobile Access for Business
Report bugs and tickets to FileCloud Support.

Check for new upgrades

#filecloudcp -c

39
Reset FileCloud Admin Password

#filecloudcp -p

The above command will reset the admin password to default

40
LINUX Upgrade Script
For systems with MongoDB authentication and custom IP binding the upgrade script will not work. Please contact support for assistance.

Upgrading your Linux operating system causes FileCloud to be uninstalled. Make sure you have backed up FileCloud before upgrade, and re-
install FileCloud afterwards.

For Filecloud upgrade on cluster, please Contact FileCloud Support

The upgrade script for full upgrades of FileCloud Server is available in version 18.1 and later.

The script method is compatible with:

Ubuntu: 16.04,18.04, 20.04


Centos: 7.x
RHEL: 7.x 8.x
Debian: buster stretch

The script method is not compatible with:

Ubuntu 14.04
CentOS 8.x
CentOS 6.x
RHEL 6.x

As an administrator, you can use filecloudcp (FileCloud control panel) to perform a full upgrade of a FileCloud instance regardless of the version (Debian,
Fedora, etc).

The control panel runs a script that opens a basic interface to step you through the installation or upgrade process.

To navigate the interface, use the following keyboard keys:

Key Action

Arrow UP scroll through the previous options in a field

Arrow Down scroll through the next options in a field

Spacebar move to the next field

Tab selects the highlighted option

Show me the commands for filecloudcp

Full Upgrade for LINUX

Requirements:

The FileCloud instance must be accessible to the external network (Internet)


The script commands must be executed with root permissions

If the FileCloud Instance doesn't have access to Internet, please contact our support team for assistance.

41
Step 1. To use filcloudcp to run the upgrade script, type the following
command:

~# filecloudcp -u

filecloudcp CLI is only available from v18.1

Step 1(Alternative). After logging in, review the packages to be updated,


and then to run the upgrade script, type the following command:

~# wget http://patch.codelathe.com/tonidocloud/live
/installer/filecloud-liu.sh && bash filecloud-liu.sh

Step 2. On the Installer and Upgrade screen, to start the process and
select Proceed, press Tab.

If you are having problems, to click Cancel, use the spacebar to


highlight Cancel, and then press the Tab key.

Step 3. On the Welcome screen, to click OK, press the Tab key.

To review the policies you are agreeing to:

The terms of service can be found here: https://www.getfilecloud.com/tos/

The privacy policy can be found here: https://www.getfilecloud.com/privacy/

Step 4. The Installer and Upgrader with inform you that FileCloud is
already installed.

a. To click OK, press the Tab key.

Step 5. The Installer and Upgrader with inform you that a new version of
FileCloud is available.
a. To click OK, press the Tab key.

Step 6. On the Upgrader screen, to start the upgrade and select Proceed,
press Tab.

If you are having problems, to click Cancel, use the spacebar to


highlight Cancel, and then press the Tab key.

42
Step 7. On the Upgrader screen, to click OK, press the Tab key.

To review the policies you are agreeing to:

The terms of service can be found here: https://www.getfilecloud.com/tos/

The privacy policy can be found here: https://www.getfilecloud.com/privacy/

Step 8. On the Upgrader screen, to start the database backup and select
Proceed, press Tab.

If you do not want to do a backup, to click Skip, use the spacebar to


highlight Skip, and then press the Tab key.

It is recommended that you complete a backup manually or through this


upgrade script before upgrading FileCloud Server.

Step 9. On the Upgrader screen, to start the webroot backup and select Pr
oceed, press Tab.

If you do not want to do a backup, to click Skip, use the spacebar to


highlight Skip, and then press the Tab key.

It is recommended that you complete a backup manually or through this


upgrade script before upgrading FileCloud Server.

Step 10. If Solr is detected, it will be upgraded.

Notes

What is Solr?

Solr is an open source enterprise search platform. It provides users with


the following features:

Content search for file types such as txt, pdf, doc, docx, xls, xlsx,
ppt, pptx
Regex support for file/folder name searches

Step 11. You will be advised that FileCloud Server has been upgraded.
This completes the upgrade process.

a. To click OK, press the Tab key.

43
Step 12. For users running multi-tenant FileCloud: Beginning in FileCloud
20.1, to sign into the admin portal for multi-tenancy, enter the username
for the superadmin user and encrypt your password in the multi.php file.
See Password encryption and logging in to a multi-tenant admin portal for
instructions on encrypting your password.

Custom settings in configuration files that are replaced during upgrade are not reset in the new configuration files.

Check If the following files are replaced with newer versions during upgrade, and in the case that they are replaced, reconfigure any custom
settings after upgrade:

C:\xampp\apache\conf\httpd.conf
C:\xampp\apache\conf\extra\httpd-filecloud.conf

44
Virtual Machine Installation
Virtual Machine Installation
FileCloud is provided as a Virtual Machine (in OVF format) so that it is easy to get started without doing any configuration or setup. The virtual machine
also allows customers to quickly evaluate and try FileCloud in other non-Linux environments.

The FileCloud Virtual Machine has the following specifications :

Operating System Ubuntu 14.04.03 64 bit LTS with Desktop

Disk Size 200 GB

RAM 2 GB

The following is the OS user login information

Username cloud

Password cloud

The following is the FileCloud Admin login information

Username admin

Password password

Installing Virtual Machine


1. Download the FileCloud OVF zip using the provided link.
2. Unzip the zip file with all the contents into your hard disk
3. See for VMWare Player Install Instructions
4. See for VirtualBox Install Instructions

Running the Virtual Machine


1. On startup, enter "cloud" as the password to login into the system.
2. After login, you will see the desktop with several icons.
3. Refer to shortcuts section for more details on the icons and how to use them.

45
46
Shortcuts
Here's the information on each shortcut and it's function.

ICON Details

Opens the main FileCloud User Portal.

Opens the FileCloud Admin Portal

User name: admin

Default Password: password

47
Opens the FileCloud Install Check Page

Shortcut to the general cloud configuration file (cloudconfig.php).

Shortcut to the FileCloud support documentation.

Click the icons to generate the URLs that can be used to access the
FileCloud from outside the virtual image.
Note: Depending on the network configuration, these links can be used to
access FileCloud from anywhere on the local network (Bridged
configuration) or from within the host (host-only or NAT configuration)

Shortcut to the folder containing all cloud files.

48
VirtualBox
For Virtual Box: Click on File->Import Appliance and then select the "FileCloud - For VirtualBox.ovf" file, then hit "Next" and then "Import". The virtual
machine will be imported and available to start.

49
50
51
VMware ESXi
If you have issues starting up the Virtual Machine in your VMware ESXi 5.1 infrastructure: You might need to do the following.

Open a console to ESXi host.


Run this command to load the multiextend module

#vmkload_mod multiextent

Convert the vmdk image, by going to the location of the virtual machine and then run the following command

#vmkfstools -i ./TonidoCloud-disk1.vmdk ./newdiskimage.vmdk -d zeroedthick

Delete the original disk

#vmkfstools -U ./TonidoCloud-disk1.vmdk

Rename the cloned disk to the original disk name

#vmkfstools -E ./newdiskimage.vmdk ./TonidoCloud-disk1.vmdk

Unload the multiextent module

#vmkload_mod -u multiextent

For more information see http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=2036572

52
VMware Player
For VMWare Player: Click on "Open a Virtual Machine" and then select the TonidoCloud.ovf file and hit "Import". The virtual machine will be imported and
be available to start.

53
54
Microsoft Azure Installation
FileCloud Virtual Machine is currently available via Azure Marketplace.

Using FileCloud VM on Azure, one can host their own file share sync and mobile access solution for their organization in less than 10 minutes. The
FileCloud Virtual Machine is built on top of Windows Server 2016 Data Center Edition. FileCloud stores the metadata information in MongoDB which is
already pre-configured in the FileCloud Virtual Machine. The actual files can be stored in the VM Disk or Azure Files depending on your requirement. We
recommend to take periodic snapshots of your running instance for disaster recovery.

Steps To Launch FileCloud Virtual Machine on Azure


1. Login to https://portal.azure.com using your azure account. Upon successful login, go to Home>> Marketplace >> Everything. Search for
FileCloud.

2. Select FileCloud and Click Create

55
3. Configure Basic Settings: Choose your Windows VM name, user name, password, subscription, resource group and the azure data center location.
Once you complete the information click OK.

56
4. Choose Virtual Machine Size according to your needs. Here we are selecting D2_v3 (8 GB RAM, 50 GB Local SSD)

57
5. Configure Storage and Network Settings as needed and Click OK.

58
7. Verify your offer details and click Create.

59
Note: FileCloud is offered under Bring your Own License Model. You can get FileCloud trial license by registering in our customer portal.

8. Azure will start provisioning your FileCloud Virtual Machine. Check the Notifications to see whether the deployment is complete.

60
9. Check the deployment is complete and make sure your FileCloud instance is running.

61
10. Connect to your FileCloud VM instance using RDP connection.

62
63
12. Right Click Windows Start Icon --> Launch File Explorer --> Go to C:\xampp and double click cloudcp (FileCloud Control Panel)

13. Start the FileCloud web server and database server via the FileCloud Control Panel.

64
14. Type http://<publicIP_of_FileCloudVM>/ui/admin/index.html to access the admin portal. Use "admin" as user name and the password is "password".

65
15. Upon successful login, set the storage path for your files and install the trial license you have got from FileCloud customer portal.

66
16. You are set now. Follow the steps here (FileCloud Site Setup) to setup and customize FileCloud as per your organization requirements.

67
FileCloud Integration with Azure File Storage
Azure File storage offers file shares in the Azure Cloud using standard SAMBA protocol (SMB 3.0). FileCloud running on Azure VMs can mount the file
shares created on Azure Files storage and use it as a main storage path for FileCloud. You can also use the same fileshare to store the MongoDB data
files. Azure Files storage is built on the same technology as Blob, Table, and Queue storage. When you create the storage account in Azure portal you can
choose what type of redundancy you would like to have (Local or geo-redundancy). By storing both files and the database db files in Azure Files Storage
you will get the same scalability, durability, reliability and geo-redundancy of Azure storage infrastructure. One can also easily scale FileCloud by running
multiple app nodes while pointing to the same Azure Files Storage location for storing files and database data files.

We have tested FileCloud with Azure Files storage backend using few million files and the setup has worked great. This configuration gives the scalability
and data redundancy without any complicated setup. If you have any questions please feel free to contact us at [email protected].

Step by Step Instructions to Integrate FileCloud with Azure File Storage


1. Create a storage account in Azure Portal and choose the storage account type (depending on your redundancy requirements). In this exercise,
we have chosen a locally redundant storage account type. We recommend to choose the location same as where FileCloud VM is located.

68
2. Create a File Share under Storage Account as shown below. One can also choose the storage quota. Maximum storage for a File Share is 5120 GB.

69
3. Create a local user in FileCloud VM with the same name as the storage account name that you have created in step 1. For password, please use the
access key of Azure Files Storage.

70
4. Make the local user created in step 3 as part of Administrators group.

71
5. Run the Apache and MongoDB service using the local user account created in the previous step.

Note: We do this step for Apache and MongoDB to have the read, write access permissions to the file shares we created on Azure storage. By using the
storage account name as a local user name and access key as the password, this local user will get complete access to the file shares.

72
73
6. Copy the file share path of file share created in step 2 from the Azure Portal ("\\filecloudazurefiles.file.core.windows.net\fileclouddata")

74
7. Set the share path("\\filecloudazurefiles.file.core.windows.net\fileclouddata") as Storage Path in Managed Storage Settings.

75
8. Open the C:\xampp\mongodb\bin\mongodb.conf file. Edit the dbpath to point to the file share path you created in Azure Files storage.

Note: Before editing the mongodb.conf file make sure you have stopped the database and the webserver from the FileCloud Control Panel.

76
9. Restart the Webserver and the Database from the FileCloud Control Panel. Now all your files and the database data files will be stored in Azure Files
Storage.

77
78
Amazon Web Services (AWS) Installation
FileCloud Public AMI (Amazon Machine Image) is currently available in Amazon AWS Marketplace.

See FileCloud AMI here on AWS Marketplace.

In the following section, to display more information, click on a topic.

The FileCloud AMI image is built on top of Ubuntu 16.04.

FileCloud stores the meta data and file share information in MongoDB database which is already pre-configured in the FileCloud AMI.
The actual files can be stored in EBS or S3.
For scalability and redundancy, we recommend you use Amazon S3 for production.
We also recommend to take periodic snapshots of your running instance for disaster recovery.

Best Practices for an organization of up to 100 users:

Select a t2.medium, m3.medium, or m3.large instance


Use Amazon EBS for FileCloud stack (FileCloud application, Apache Webserver, MongoDB Database)
Use Amazon S3 for cloud storage to provide a scalable, redundant infrastructure to satisfy any business requirement

What if I'm not using Ubuntu?

Apart from FileCloud AMI on Ubuntu 16.04, we have also pre-built AMIs (BYOL - Bring Your Own License) available on Windows Server 2016 and
Windows Server 2012. Please see the AWS marketplace links below,

FileCloud Enterprise File Sharing and Sync (Windows Server 2016)

FileCloud for Windows Server 2012


We have also the following paid AMI's available on AWS Marketplace,

FileCloud Enterprise File Sharing and Sync (20 Users)

FileCloud Enterprise File Sharing and Sync - Windows 2012 R2 -(20 Users)

79
Launching the FileCloud AMI
An Amazon Machine Image (AMI) is a master image for the creation of virtual servers, known as Elastic Cloud (EC2 instances) in the Amazon
Web Services (AWS) environment.

Machine images are like templates that are configured with:

A root volume. This is an operating system and other software.


Permissions. These settings constrain AMIs for instance launches to the appropriate AWS accounts.
A block device mapping. This ensures that the correct volumes are attached to the launched instance.

These elements determine the user’s operating environment.

In the following section, to display more information, click on a step.

To launch the FileCloud AMI:

An AWS Account
An AWS account allows you to:

Open the Amazon EC2 console


Choose a launch instance
Launch your instance

If you've already signed up for Amazon Web Services (AWS), you can start using Amazon EC2 immediately.

If you haven't signed up for AWS yet, use the following link to get set up to use Amazon EC2.

Setting up with Amazon EC2

You can read more about Amazon Elastic Compute Cloud on Amazon's site.

You can begin the process of launching a Linux instance by using the AWS Management Console.

To launch an instance:

1. Open the Amazon EC2 console at https://console.aws.amazon.com/ec2/.


2. From the console dashboard, choose Launch Instance.
3. The Choose an Amazon Machine Image (AMI) page displays a list of basic configurations, called Amazon Machine Images (AMIs), that serve
as templates for your instance.
4. In the Search bar, type in FileCloud.
5. Next to the latest version, click Select.

Figure 1. An example of FileCloud listings in AWS Marketplace. (This image does not necessarily show the latest version.)

80
When you launch an instance, the instance type that you specify determines the hardware of the host computer used for your instance.

Each instance type offers different capabilities, such as:

compute
memory
storage capabilities

Instance types are grouped in instance families based on these capabilities.

Read more about Amazon's Instance Types

Table 1. General Purpose Instance Types

Instance Family Current Generation Instance Types

General Purpose t2.nano | t2.micro | t2.small | t2.medium | t2.large | t2.xlarge | t2.2xlarge |


t3.nano | t3.micro | t3.small | t3.medium | t3.large | t3.xlarge | t3.2xlarge |
m4.large | m4.xlarge | m4.2xlarge | m4.4xlarge | m4.10xlarge | m4.
16xlarge | m5.large | m5.xlarge | m5.2xlarge | m5.4xlarge | m5.12xlarge
| m5.24xlarge | m5d.large | m5d.xlarge | m5d.2xlarge | m5d.4xlarge |
m5d.12xlarge | m5d.24xlarge

Read Amazon's complete listing of Available Instance Types

CodeLathe recommends that you should select an instance type based on:

Minimum requirement: t2.medium or t3.medium


For best performance: select a type in the m series. For example: m3.medium

To choose the Amazon EC2 Instance type:

1. On the Choose an Instance Type page, you can select the hardware configuration of your instance.

This step can change depending on the Instance Type you chose:

T2 instances, such as t2.micro, must be launched into a VPC.

81
If your AWS account supports EC2-Classic and you do not have a VPC in the selected region, the launch wizard creates a VPC for
you and you can continue to the next step.
Otherwise, the Review and Launch button is disabled and you must choose Next: Configure Instance Details and follow the
directions to select a subnet.

Figure 2. Options for the next step after selecting an instance type.

To configure instance details:

1. If you selected an Instance Type of t2.medium or t3.medium, then you must enable T2/T3 unlimited. See Figure 3.
2. When you get to the Configure Security Group step, open up the port 80/443 for web access. See Figure 4.
3. You might need to open other ports such as 443 (HTTPS), depending on your business requirements.

Figure 3. Configure Instance Details

Figure 4. Configure Security Groups

82
You can read more about Amazon EC2 Security Groups.

To complete the Final Review and Launch, see the next step: Step 5: Launch the Instance

To launch an instance:

1. When you are ready, click Review and Launch


2. Next to your instance, select the acknowledgement check box, and then choose Launch Instance.
3. A confirmation page lets you know that your instance is launching.
4. Choose View Instances to close the confirmation page and return to the console.
5. On the Instances screen, you can view the status of the launch. It takes a short time for an instance to launch.
6. When you launch an instance, its initial state is pending. After the instance starts, its state changes to running and it receives a public DNS
name.
7. If the Public DNS (IPv4) column is hidden, choose Show/Hide Columns (the gear-shaped icon) in the top right corner of the page and then
select Public DNS (IPv4).
8. It can take a few minutes for the instance to be ready so that you can connect to it.
9. Check that your instance has passed its status checks in the Status Checks column.
10. Note the Public DNS name to access your FileCloud site.

Figure 5. FileCloud Status in Your AWS dashboard.

83
To connect to your instance:

1. Open a Web browser.


2. to access the FileCloud admin portal, type in the following URL:

http://<public_dns_name>/ui/admin/index.html

3. To login to the Admin Portal, use the following information:

Default Admin admin

Default Password Your amazon instance ID

After logging in for the first time, you must change the admin password.

4. After logging in, you will see an Admin Attention window. Use this to install the FileCloud License.

To receive a license you must register at the FileCloud license management portal.

After logging in to the Admin Portal, you will see an Admin Attention window. You will also see tags on the right side of the dashboard telling you about
what needs to be done after installation.

Complete the following items after you are able to launch and connect to your instance:

Item

Remove the Installation Folder

The default FileCloud instance uses CodeLathe SMTP servers and


accounts to send emails.

Change the SMTP servers and accounts to use your own servers for
security purposes.

84
The admin email address is used in all the emails that sent out from the
FileCloud System.

Change the admin email to your organization email address.

To show all the installed packages in this instance:

1. Open a Web browser


2. Navigate to http://<public_dns_name>/install.
3. Check the page and familiarize yourself with FileCloud components.

The user name for the underlying Ubuntu OS is 'ubuntu'. Before


launching the instance you will be required to create a key pair or you
can use your existing key pair.

FileCloud recommends you use S3 for file storage instead of the EBS.

To understand how to setup S3 for FileCloud file storage, read Setti


ng up FileCloud Managed S3 Storage

After you configure the FileCloud storage, follow the site setup
instructions to setup the FileCloud site according to your requirements.

Take Periodic snapshots of your running instance for Disaster recovery


and as an additional backup for FileCloud database and app.

The ability to install an Enterprise license with components (like Salesforce) is available in FileCloud Server version 18.2 and later.

Your AMI image will automatically come with a standard or enterprise license.
When you log in to the Admin Portal, you can automatically see the License type (BASE/ENTERPRISE) and also the total number
of licenses on the dashboard.

Need to seed data quickly into your new FileCloud installation?

Seeding FileCloud for Amazon S3

85
Seeding FileCloud for Amazon S3

Initially, when FileCloud is made ready for production purposes, it may be required to get it pre-populated with files/folders for FileCloud users. FileCloud is
bundled with a tool to preload such files/folders before it is opened for user access. This article explains how to use this tool for seeding FileCloud.

Prerequisite
Usage
Seed files for multiple users without resetting databases
Seed files for multiple users resetting databases
Seed files for a single user
Seed files into an existing path
Migrate local storage to S3 storage
Export Site Database (optional)

Prerequisite
To use the seeding tool, mongodb should be enabled in PHP CLI mode.

Enable MongoDB:

In Linux enter:

[root@cnfc php.d]# php -m | grep mongodb


mongodb
[root@cnfc php.d]#

In Windows enter:

C:\Windows\system32>C:\xampp\php\php.exe -m | findstr mongodb


mongodb

C:\Windows\system32>

If you do not get the above results, please Contact FileCloud Support.

In Windows, MongoDB module should be enabled by default.


If MongoDB is not enabled for PHP CLI mode, the tool will fail.

Usage

86
Initializing backup tool

rmen@li111-150:~$ cd /var/www/resources/tools/seeding
rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php
Please specify site name. Use 'default' for default site.
Usage: php seed.php -h <host> -p <path> [options]
[Required] -h <host> Site host name or use 'default' for default site
[Required] -p source path from where files are to be seeded
[Options]
-i seed files. Need to set this flag for seeding files
-d <storagepath> seed files from source path specified with -p to an existing storage
path <storagepath>.
-m <s3inipath> specify path to migrate.ini. This ini file will be used to migrate
existing local storage to S3 storage
-u user whose files are to be imported. File with the user name should exist in the
source path. Applicable only with -i
-r reset existing database. This will reset the databases, so use it with caution

Seed files for multiple users without resetting databases


To seed files for multiple users at the same time, prepare a top directory(source path) with separate folders for each user to be seeded with data. Under
the user specific folder place files/folders to be seeded for that user.
Run the following command to seed all the users from the prepared source path.

Linux seeding files/folders for multiple users - Default site

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -p /tmp/seedfolder -i

The following code shows how to export files for user 'jdoe' from site site21.hostedcloud.com to directory 'cloudexport'.

Windows seeding files/folders for multiple users - Default site

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -p C:\temp\seedfolder -i

Note

If user account exists, seeded files/folders will be imported to those accounts


If user accounts doesn't exist, user accounts will be created before seeding.

Seed files for multiple users resetting databases


To seed files for multiple users at the same time, prepare a top directory(source path) with separate folders for each user to be seeded with data. Under
the user specific folder place files/folders to be seeded for that user.
Run the following command to delete all the existing data and seed from the prepared source path.

Linux resetting and seeding files/folders for multiple users - Default site

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -p /tmp/seedfolder -i -r

Windows resetting and seeding files/folders for multiple users - Default site

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -p C:\temp\seedfolder -i -r

87
Note

All the existing user accounts and its associated data will be deleted before the seeding.
New user accounts will be created before seeding. Default username and password will be used (i.e password password)

Seed files for a single user


To seed files for multiple users at the same time, prepare a top directory(source path) with separate folders for each user to be seeded with data. Under
the user specific folder place files/folders to be seeded for that user.
Run the following command to seed all the users from the prepared source path.

Linux seeding files/folders for single user - Default site

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -p /tmp/seedfolder -u jdoe -i

Windows seeding files/folders for single user - Default site

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -p C:\temp\seedfolder -u jdoe


-i

Note

Data will be seeded for a single user


In this case, command expects a folder jdoe to exist under the source path

Seed files into an existing path


To seed files into an existing FileCloud storage path, prepare a top directory(source path) with a single folder under which files/folders to be seeded are
placed.
Run the following command to seed the single folder and its contents to an existing FileCloud storage path.

Linux seeding files/folders into an existing storage path - Default site

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -p /tmp/seedfolder -d /jdoe


/march

Windows seeding files/folders into an existing storage path - Default site

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -p C:\temp\seedfolder -d /jdoe


/march

Note

In this case, command imports single folder under the source path into FileCloud storage path /jdoe/march

Migrate local storage to S3 storage


The seeding tool can also migrate files from local storage to S3 storage. When the tool is run in this mode, it does the following steps:

1. Checks if AWS CLI is installed on the system running the tool


2. Checks if a valid migration ini file is specified. Look below for the file format.
3. Important: Deletes the existing S3 storage database. If the site was never configured for S3 before, then this should not be an issue.
4. Creates a new S3 storage database and imports the data from local storage database converting it into S3 storage database format on the fly.
5. Creates multiple AWS CLI commands to upload data from the local storage to the S3 bucket. The details of this transfer are generated using the
specified ini file.
6.

88
6. Executes the AWS CLI commands prepared in the previous step.

Run the following command to migrate from local storage to S3 storage

Linux migrating from local storage to S3 storage

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -m /tmp/migrates3.ini -p /

Windows migrating from local storage to S3 storage

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -m C:\temp\migrates3.ini -p /

S3 migration ini file

aws_storage_bucket = "company.bucket"
aws_storage_folderprefix = "site1"
aws_access_key_id = "AKIAT4YDRDUSRO863KJJ"
aws_secret_access_key = "stPwbS3Y1KrZGUkVbNcYJx+8S/ZZKFROOjUdG9e9"
aws_region = "us-east-1"

Export Site Database (optional)


For the case of FileCloud Online, the full set of databases has to be exported along with migration. This can be achieved with the following commands.

Linux migrating from local storage to S3 storage

rmen@li111-150:/var/www/resources/tools/seeding$ sudo php ./seed.php -h default -m /tmp/migrates3.ini -e /tmp


/dbexport -p

Windows migrating from local storage to S3 storage

d:\xampp\htdocs\resources\tools\seeding> C:\xampp\php\php.exe seed.php -h default -m C:\temp\migrates3.ini -e C:


\temp\dbexport -p

89
Amazon GovCloud AWS Installation
Prerequisite: One needs to have Amazon AWS GovCloud account to use the GovCloud infrastructure. If you are a federal, state govt agency or a US
business working with government contracts, you can get AWS GovCloud account from Amazon. You can apply for an Amazon Govcloud account here (htt
ps://aws.amazon.com/govcloud-us/contact/). Once your account is approved, you can start using the AWS GovCloud infrastructure. Note that the Amazon
GovCloud admin console as well as the account is different from your regular AWS account. Not all aws services are available under AWS GovCloud. The
AWS GovCloud (US) Region allows customers to adhere to: US International Traffic in Arms Regulations (ITAR), Federal Risk and Authorization
Management Program (FedRAMP), and Department of Defense (DoD) Cloud Computing Security Requirements Guide (SRG) Impact Levels 2, 4, and 5.

FileCloud Public AMI (Amazon Machine Image) is currently available in Amazon AWS GovCloud. Using FileCloud's AMI, government agencies can host
their own, secure file share sync and mobile access solution for their organization is less than 10 minutes. The FileCloud AMI image is built on top of
Ubuntu 16.04 OS. FileCloud stores the metadata and file share information in MongoDB Database which is already configured in the FileCloud AMI. The
actual files can be stored in EBS or S3. For scalability and redundancy, we recommend to use S3 for production. We also recommend that you take
periodic snapshots of your running instance for disaster recovery.

For a 100 users organization, a t2.medium or m3.medium or m3.large instance is good enough. Using Amazon EBS for FileCloud stack (FileCloud
application, Apache Web Server, MongoDB Database) and Amazon S3 for cloud storage provides a scalable, redundant infrastructure that will satisfy any
stringent business and federal security requirements. Since you only pay for the FileCloud licenses ($40/user/year) and Amazon infrastructure the cost
savings are very significant compared to any other public cloud file sharing app like Dropbox or Box.net.

In a normal usage scenario, we expect FileCloud + AWS Infrastructure will cost $60/user/year compared to $240/user/year for Dropbox or Box.net. In
addition, with FileCloud you have complete control over the app, branding, domain naming and access permissions. Using FileCloud + AWS, one can
approximately save over $18,000 (assumption 100 users) when compared to Dropbox for business or Box.net.

Steps to Launch FileCloud AMI on GovCloud


1. Login to your aws govcloud admin console using your account, username and password

2. Click EC2 (Virtual Servers in the Cloud)

90
3. Click Launch Instance

4. Search FileCloud AMI in AWS marketplace

91
and choose Continue

92
5. Choose the desired Amazon EC2 Instance type. We recommend at least t2.medium. However, m3 series (like m3.medium) would be better. t2
series begin to throttle resources after sustained usage.

6. Configure the instance details as per your requirement.

7. Select the desired storage. EBS storage is used to store the file meta and application data in the mongodb database. Depending on your
implementation, actual files can be stored either in EBS or amazon S3.

93
8. Configure Security Groups. If you need a external HTTP/HTTPS access you need to open port 80 and 443.

9. Complete the review and launch instance

94
10. You can see now your FileCloud is running in your AWS dashboard. Please note the Public DNS name to access your FileCloud.

95
11. Type 'http://<public_dns_name>/ui/admin/index.html' in your browser to access the FileCloud admin portal.

Default Admin admin

Default Password Your amazon instance ID

Note Please change the admin password upon first login.

96
12. Once you logged into the admin portal, please install the FileCloud License.

Please register at our license management portal (https://portal.getfilecloud.com/ui/user/index.html?mode=register) to get trial licenses.

97
1. The user name for the underlying Ubuntu OS is 'ubuntu'. Before launching the instance you will be required to create a key pair or you can
use your existing key pair.
2. If you go to 'http://<public_dns_name>/install' , the page will show all the installed packages in this instance. Check the page and
familiarize yourself with FileCloud components. Before going production move the install folder (/var/www/html/install) to somewhere else.
3. We recommend you to use S3 for file storage instead of the EBS. Please check this page (Setting up FileCloud Managed S3 Storage) to
know how to setup S3 for FileCloud file storage.
4. Take Periodic snapshots of your running instance for Disaster recovery and as an additional backup for FileCloud database and app.

FAQ
What is AWS GovCloud (US?

AWS GovCloud (US) is an isolated AWS Region designed to allow US government agencies and customers to move sensitive workloads into the cloud by
addressing their specific regulatory and compliance requirements. The AWS GovCloud (US) framework adheres to U.S. International Traffic in Arms
Regulations (ITAR) regulations as well as the Federal Risk and Authorization Management Program (FedRAMPSM) requirements.

What is the Federal Risk and Authorization Management Program (FedRAMP)?

The Federal Risk and Authorization Management Program, or FedRAMP, is a government-wide program that provides a standardized approach to security
assessment, authorization, and continuous monitoring for cloud products and services. For more info check FedRAMP website (http://www.fedramp.gov/).

What is ITAR Regulations?

International Traffic in Arms Regulations (ITAR) The regulations control the export and import of defense-related articles and services on the United
States Munitions List (USML).

More Information:
FileCloud Videos FileCloud Blogs

Choose the Right File Sharing Solution for ITAR


Compliance

98
FileCloud Docker installation
On this page:

Installing Docker
Setting up LibreOffice preview
Confguring Solr

Installing Docker
1. Install docker-compose in your Docker server:

apt-get install docker-compose

2. Download docker-compose.yml using the below command:

wget https://patch.codelathe.com/tonidocloud/live/scripts/fc/docker-compose.yml

3. Pull the four FileCloud images:


filecloud/filecloudserver20.2, mongo:3.6, filecloud/filecloudpreview20.1, filecloud/filecloudsolr20.1:

docker-compose pull

4. Start the containers:

docker-compose up -d filecloud.server filecloud.mongodb filecloud.preview filecloud.solr

(Do not change these names.)


If you do not want to start the optional containers filecloud.solr and filelcoud.preview, remove
filecloud.solr and filecloud.preview from the command.

Now you can access the FileCloud admin portal at http://<hostip>/ui/admin/index.html. The user name is admin and the password is password
. You can access the FileCloud user portal at http://<hostip>/ui/core/index.html.

Setting up LibreOffice preview


Filecloud has two preview methods:

Built-in web preview


LibreOffice preview

To use LibreOffice

1. Start the filecloud.preview container.


2. In the Admin portal, go to Settings > Misc > Preview.
a. In Office Location, enter /usr/lib/libreoffice/program

99
b. Check Enable Document Converter.

Confguring Solr
1. To configure Solr, start the filecloud.solr container.
2. Enter the Solr container shell:

docker exec -it filecloud.solr bash

3. Copy the skeleton:

cp -R /var/www/html/thirdparty/solarium/fcskel/* /var/solr/data/fccore/

4. Go to Admin portal > Settings > Content search.


a. Click Configure.
b. To start indexing, click the green Index button.

By default, FileCloud uses host mount volumes for the Database and Filecloud storage folder.

100
Update Docker to 21.1
Before upgrade:
1. Make a backup or take a snapshot of your server..
2. Read the steps below completely. If you have a custom docker-compose file configuration, make sure that you understand the changes, and if
you have any questions, please contact Filecloud support.

Mongo database upgrade

Only follow these steps if your MongoDB version is 3.6 or higher).


These steps are based on the docker-compose.yml file we provided. If you have any custom docker-compose configurations or volumes, please
use any custom paths, filenames, etc. when following these steps.

Beginning with Filecloud version 21.1, MongoDB version 4.2 is being used. This requires you to:

First, upgrade the MongoDB container from 3.6 to 4.0.


Then, set feature compatibility to 4.0.
Upgrade the MongoDB container from 4.0 to 4.2
Then, set feature compatibility to 4.2

Perform the upgrade


1. Enter the following into the command line:

docker exec -it filecloud.mongodb bash -c 'mongo --eval "db.adminCommand( {


setFeatureCompatibilityVersion: \"3.6\" } )"'
docker-compose down

2. Edit your docker-compose.yml file to point to the new images (or download the new docker-compose.yml file and edit it).
Enter the following:

sed -i "s/20.2/21.1/g" docker-compose.yml


sed -i "s/20.1/21.1/g" docker-compose.yml
sed -i "s/mongo:3.6/mongo:4.0/g" docker-compose.yml

3. To list all the volumes, enter:

docker volume ls

The volume var_html will contain old FileCloud codes, so remove it by entering the command below. If you have any custom entries (for example,
in cloudconfig.php or localstorage.php, please make sure to back up those files.

docker volume rm var_html

Please note that the environment variable is now mongodb_data_container. In 3.6 it was MONGO_DATA_DIR
Make sure you set the environment variable to mongodb_data_container in 4.0 and 4.2.

The MongoDB service in the compose file should appear similar to:

version: '3'

services:
filecloud.mongodb:
container_name: 'filecloud.mongodb'

101
image: mongo:4.0
environment:
- mongodb_data_container:/data/db
volumes:
- mongo_database:/data/db
ports:
- "27017:27017"

volumes:
mongo_database:

4. . Start the containers:

docker-compose up -d
docker exec -it filecloud.mongodb bash -c 'mongo --eval "db.adminCommand( {
setFeatureCompatibilityVersion: \"4.0\" } )"'

5. Upgrade to Mongdb to 4.2

sed -i "s/mongo:4.0/mongo:4.2/g" docker-compose-mongodb.yml


docker-compose -f docker-compose-mongodb.yml up -d
docker exec -it filecloud.mongodb bash -c 'mongo --eval "db.adminCommand( {
setFeatureCompatibilityVersion: \"4.2\" } )"'

102
Alibaba Cloud Installation
Steps to Launch FileCloud AMI on GovCloud
1. Log in to your Alibaba Cloud account.

2. Click Elastic Compute Service.

3. Click Create Instance.

103
3.

4. Select the Billing Method and Region as per your requirements.


For Instance Type, select x86-Architecture.

104
5. Scroll down and select Marketplace Image and then click Select from image market (including operating system).

6. In the Image Marketplace ... screen, search for FileCloud and click Use.

7. Select the desired storage configuration (you can use the defaults provided by Alibaba), then click Next: Networking.

105
7.

8. if the server is to be accessed publicly, check Assign Public IP Address.


Set Peak Bandwidth according to your requirements.
Select Port 80 (HTTP) and Port 22 to enable IPv4.
You can change this after setup is completed.

9. Click Preview after you have selected the ports to allow.

10. Review your settings.


Check ECS Terms of Service, and click Create Instance to launch the instance.

106
A confirmation box indicates that the instance has been created.
11. Click Console to open the Instances screen.

12. Confirm that FileCloud is running in your Alibaba Instances dashboard. Please note the public IP Address and Instance ID to access your
FileCloud server.

13. In your browser, access the FileCloud admin portal at http://<public_ip_address>/ui/admin/index.html.

Default Admin admin

Default Password <Your Alibaba instance ID>

Note Please change the admin password upon first login.

107
14. Install the FileCloud license.

Please register at our license management portal (https://portal.getfilecloud.com/ui/user/index.html?mode=register) to get trial licenses.

The user name for the underlying Ubuntu OS is root. Before launching the instance you must either create a key pair or use your
existing key pair.
The page http://<public_ip_address>/install displays all the installed packages in this instance. Check the page and
familiarize yourself with FileCloud components. Before going to production move the install folder /var/www/html/install to a
different location.
Take periodic snapshots of your running instance for disaster recovery and as an additional backup for the FileCloud database and
app.

108
Post Installation
After the FileCloud installation is completed, the following steps will help you prepare FileCloud for use:

1. Verify Your Installation.


2. Install the FileCloud License.
3. Configure the Managed Storage Path.
4. Enable MongoDB Authentication.
5. Configure SSL if desired.

FAQs
To configure storage, SSL, and other post-installation settings, I need the File Cloud Control panel. How do I open it?

In the following section, to display more information, click on a topic.

There are several ways to open the FileCloud Control Panel:

Using the Windows Start Menu

1. On the server, from the Windows Start menu, select the FileCloud Control Panel.

Finding the FileCloud control panel executable file (cloudcp.exe)

1. On the server, find the xampp folder.


2. Inside the folder, double-click the cloudcp.exe file.

109
Verify Your Installation

FileCloud is bundled with a verification tool to help you test your installation. You can run this tool from the server where FileCloud is installed or remotely
from a different system. This tool will perform various configuration checks related to your FileCloud environment.

Verification checks are grouped into two categories: basic and extended. It is strongly recommended that you review the basic checks to ensure that the
required components are available to FileCloud. Once the Basic checks pass, Extended checks should be reviewed to verify that required directories and
configurations are available.

Basic Checks Extended Checks

Apache Web Server CloudConfig.php readable

Apache Mod Rewrite Localstorageconfig.php readable

.htaccess Present Scratch Directory Writable

PHP 7.4 Config Directory Readable

PHP MongoDB (mongodb ext) driver 1.2.3 or higher Mod Rewrite Apache Configuration Setup Check

PHP GD Library PHP Memcache Server (Optional)

PHP Zip library Verification of Mongo DB connection

PHP Curl Library

PHP OpenSSL library

PHP ionCube extension 4.4.1 or higher

PHP bcmath extension

PHP SimpleXML extension

PHP mbstring extension

PHP LDAP library (optional)

PHP Memcache Extension (optional)

110
Install in Server WWW root folder

CloudConfig.php Readable

Exif Extension

In FileCloud Server version 19.1 and later, a new entry has been added
for the Exif extension installation.

The Exif extension is used when uploading an image to generate a


thumbnail
It is also used to extract information for the built-in metadata set for
images

When Exif is disabled in PHP:

In the logs the Exif extension is listed as disabled


Uploaded images do not have a thumbnail, and the Image metadata
set is empty
To disable: Open the php.inic file, comment out the exif extension,
and restart the web server

When Exif is enabled in PHP:

Uploaded images have a thumbnail


The Image metadata set contains attributes for all image files
This is the default behavior

FileCloud does not apply Image metadata for Azure/S3


Network Folders.

This tool will also report problems so you can correct them before using FileCloud.

All failures reported by the verification tool must be fixed before attempting to use FileCloud.

Reviewing the Verification Checks


To verify your FileCloud installation:

1. From the FileCloud server, or the VM instance, open a web browser and enter the following address:

http://<yourdomain>//install

Notes

By default, the address is: http://127.0.0.1/install


To run verification tests from a system that does not have the FileCloud installation, replace 127.0.0.1 with the IP of the system where
FileCloud is installed.

2. To review basic tests, select Basic Checks.

3. To review more thorough tests, select Extended Checks.

111
Basic Checks
Clicking on the Basic Checks tab displays:

1. The name of the item that was checked.

2. The result of the check. A blue checkmark = PASS, and a red X = FAIL.
3. Additional information for installing, troubleshooting, or correcting an issue for this item.

You should review each item in the list to understand how your system is configured and functioning.

In the following section, to display more information, click on a step.

To review Basic Checks:

How to review basic checks

The following table explains how to use the Basic Checks information:

What You See What It Means

.htaccess present For a blank entry with a blue


checkmark, the item has passed the
verification test and there is nothing
further for you to do.

Apache Mod Rewrite For a notes entry with a blue


checkmark, the item has passed the
verification test.

Optional: To read more about the item,

click on (the Notes


icon).

PHP Memcache Extension version 3.0.9-dev For a version entry with a blue
checkmark, the item has passed the
verification test using the specific
version.

Optional: To read more about the item,

click on (the Notes


icon).

PHP ionCube extension 10.1.0 For a version entry with a blue


or higher checkmark and links, the item has
passed the verification test using the
specific version and you must
complete the items listed by clicking
on the link.

112
REQUIRED: To install this component,
click the Install link.

PHP LDAP Library Ignore failure if AD/LDAP is For an Ignore - IF entry with a blue
(optional, for AD/LDAP not needed checkmark, the item has passed the
support) verification test conditionally.

1. Check the condition. In this


example, determine whether you
need AD/LDAP.
2. If the condition is true, then there
is nothing further for you to do. In
this example, you do NOT need
AD/LDAP.
3. If the condition is false, then
resolve the issue. In this
example, if you DO need AD
/LDAP, then you must go and
install it.

Optional: To read more about the item,

click on (the Notes


icon).

Version: For any entry with a red X, you must


correct the issue.

For help resolving an issue, use the


following resources:

Read more about the item in the

.
Review the Requirements page.
Review the installation
procedures.
Review the Installation
Troubleshooting page.

The Help column provides information and resources for understanding how your system is working.

In the Help column, if you click on (the Notes icon), the FileCloud Help page opens.

113
Resolve Failed Checks
To resolve an issue:

1. Return to the FileCloud control panel and install any missing required components or start any required services.
2. For help resolving an issue, use the following resources:

Read more about the item in the .


Review the Requirements page.
Review the installation procedures.
Review the Installation Troubleshooting page.

Here are details about some of the important extended checks performed.

This is the set of basic checks performed on your FileCloud installation environment.

Check Details

Apache Web Server Checks if your environment has a working Apache


server installation.

Apache Mod Rewrite Checks if mod rewrite module is enabled and


activated.

Apache Mod Deflate/Filter (optional) Checks if the Apache mod_deflate module is present.
This is optional.

.htaccess Present Checks if the .htaccess is present in the root


WWWROOT folder

PHP 7.4 or higher Checks if the environment has PHP v7.4 or higher.

PHP MongoDB (mongodb ext) driver 1.6.0 or higher Checks if PHP Mongo DB drivers are installed
properly and are version 1.6.0 or higher.

114
PHP GD Library Checks if GD library is installed properly.

PHP Zip library Checks if Zip library is installed properly

PHP Curl Library Checks if PHP Curl library is installed, this is


required if you are using open stack, Amazon S3 or
NTFS permissions or Multi-tenancy.

PHP OpenSSL library Checks if OpenSSL library is installed properly.

PHP ionCube extension 10.4.0 or higher FileCloud PHP files are protected by ioncube
encoder. So ioncube decoder is essential for
FileCloud to function.

Click on the "Install ionCube Loader" link to get


instructions on configuring ionCube loader on your
environment.

Choose "Local Server" when selecting your


environment.

PHP bcmath extension Checks if PHP bcmath extension is installed.

PHP SimpleXML extension Checks if PHP SimpleXML extension is installed.

PHP mbstring extension Checks if PHP mbstring extension is installed.

PHP LDAP library (optional) Checks if PHP LDAP extension is installed. This is
optional and only required if your environment will
be using LDAP or Active Directory authentication.

PHP Memcache Extension (optional) Checks if PHP Memcache extension is installed. This
is optional and only required if you will be using
encryption for Local Storage (Managed Storage)

Install in Server WWW root folder Checks if FileCloud installation is in the main
server root and not in the subfolder, ie. http://myd
omain.com and not http://mydomain.com/cloud

CloudConfig.php Readable Checks if cloudconfig.php exists and readable.


cloudconfig.php file is present in WWWRoot/config
folder

115
Extended Checks
Clicking on the Extended Checks tab displays:

1. The name of the item that was checked.

2. The result of the check. A blue checkmark = PASS, and a red X = FAIL.
3. Additional information for installing, troubleshooting, or correcting an issue for this item.

In the following section, to display more information, click on a step.

To finish verifying your installation using Extended Checks, complete the following steps:

Resolve Failed Checks


To resolve an issue:

1. Return to the FileCloud control panel and install any missing required components or start any required services.
2. For help resolving an issue, use the following resources:

Read more about the item in the .


Review the Requirements page.
Review the installation procedures.
Review the Installation Troubleshooting page.

Here are details about some of the important extended checks performed.

Check Details

CloudConfig.php readable Checks if the cloudconfig.php file is present in the config folder

Localstorageconfig.php readable Checks if the localstorageconfig.php file is present in the config folder

Scratch Directory Writable Checks if WebServer process has write permissions to WEBROOT
/scratch directory.
In Linux, usually chown -R www-data:www-data WEBROOT/scratch

116
followed by chmod -R 700 WEBROOT/scratch would be sufficient.

Config Directory Readable Checks if Apache web server process has read permissions to
WEBROOT/config directory.

Mod Rewrite Apache Configuration Setup Check Checks if Apache website configuration has mod rewrite rules allowed.

FileCloud Message Queue Service Checks to see if Message Queue Service is up and running.

PHP Memcache Server (Optional) Checks if Memcache server is running. This is currently optional.

Verify Mongo Database Connection


In step 2, if you see the following:

Then you can move on to step 3, and install any missing updates.

If your connection is not OK, then return to the FileCloud control panel to troubleshoot and resolve the issue.

Install Any Required Updates


In step 3, review the Status for the following required modules, and take any required Actions:

MODULE ACTION

Build Version After finishing the Post Installation steps, you can upgrade FileCloud
from the Admin portal.

Database Schema Click on the Update link to update your database to the latest schema
version.

Config Files To see the configuration entries that need to be added, in the Action
column, click the link. Whenever you update to a new version, it is
normal to have to add new entries.

Set Up Outside Access


In step 4, if you want to allow someone from outside your organization to access FileCloud, then you can configure your Web server ports for port
forwarding. Port forwarding, or port mapping, is an application of network address translation (NAT) that redirects a communication request from one
address and port number combination to another while the packets are traversing a network gateway, such as a router or firewall. The process for this
will vary depending on the operating system you are using.

117
To set up outside access:

1. To ensure port 80 is accessible from the outside, forward the ports from your Public WAN IP to the internal IP address of the FileCloud server.
2. Ensure port 80 is accessible through any organizational firewalls.
3. For additional security, it is recommended that you use only port 443 for secure access via HTTPS.
4. For additional security, purchase and install and SSL certificate for your domain.

For more information on port forwarding, see the following references:

Windows - Remote access and server management


Ubuntu - SSH/OpenSSH/PortForwarding
Debian 8 - Port forwarding with IP tables

Configure Any Missing Integrations


In step 5, you should make sure you have the Cron task service configured so background tasks will be run. FileCloud uses a cron job to perform
certain ongoing maintenance tasks, such as sending email notifications for file changes, share notification etc.

Other optional items can be configured at this time too.

For additional details, click More Info:

Log In to the Admin Portal


In step 6, use the link provided to log in to the Admin portal.

When you log in to the Admin portal for the first time, you may see informational flags for configuration tasks and a Welcome wizard.

You do not have to complete these tasks in step 6, but before users can log in to the User portal, those tasks must be completed.

The first time you log in, the Admin Username is admin, Admin Password is password.

It is recommended that you change this password using the FileCloud control panel.

To reset the password for the Admin portal:

1. Open the FileCloud control panel.


2. Under Miscellaneous, click Reset Admin Password.

To verify login ability:

1. To log in to the Admin portal, click the URL link for the Admin Portal.
2. Make sure your Dashboard loads.
3. If you can log in and see the dashboard, move on to step 7 to delete the installation directory.

Delete the Installation Folder


Once you have verified your installation and can log in to the Admin portal, it is recommended that you delete in the installation directory.

This step provides increased security. If someone can guess the location of your installation folder and access it they could potentially
overwrite your site by running the installer again.

118
The installation folder exists in the following location by default:

OS Location

Windows C:\xampp\htdocs\install

Linux /var/www/html/install

or

/var/www/install

To delete the installation folder:

1. On the FileCloud server, locate the installation folder for your operating system.
2. On Windows, to delete the folder, right-click its name or icon, and then choose Delete from the pop-up menu.
3. On Linux, to remove all files and directories within that directory, with no prompt for deleting each file, use the following command:

rm -rf install

119
Install the FileCloud License
Your FileCloud license provides legally binding guidelines on the use and distribution of your newly installed FileCloud software.

To display more information, click on a topic.

Obtaining a FileCloud License


The length of access and site configuration will vary depending on your license type.

There are two basic forms of FileCloud licenses:

License Type Duration Features Availability

Trial (free) Temporary Server (Self-host)


All features
14 days Mobile and desktop apps Standard
Free support Enterprise

Deployment URL will be set as "*" (


accessible from any URL) Online (Hosted by us)

Standard
Enterprise

Production Permanent based on length paid for Server (Self-host)


All features
(on-premises) Usually 1 year Mobile and desktop apps Standard
Free support Enterprise

Deployment URL can be set to use


your specific domain Online (Hosted by us)

(URL accessibility from within your Standard


company and outside access Enterprise
managed by Administrators)

For more information, read the license descriptions and Key Features on the FileCloud Pricing page.

For frequently asked questions about licensing, read License Purchase and Renewal

When you register on the FileCloud web site to access the installation software, you should receive your trial license, although it still needs
to be installed.

If you already downloaded your license, proceed to the steps for installing it.
If you did not download your license yet, use the procedures in this section and then proceed to the steps for installing your license.

Download a License

To download a license:

1. Navigate to the following URL: https://portal.getfilecloud.com/ui/user/index.html


2. Type in the registered email and the password provided to access the portal.
3. On the dashboard menu, click on Licenses.
4. For a Trial license, in the description, use the link to download the license.
5. For a Production license, select the file in the Production section, and then in Actions, click the Download button.
6. The license will be stored on your server as license.xml.

120
The ability to install an ENTERPRISE license and other license components such as SALESFORCE is available in FileCloud Server
version 18.2 and later.

Installing Your License


You can operate FileCloud Server using either a Standard or Enterprise license.

If you do not need to use individual additional components, such as SALESFORCE, and Pattern Search, you can use a Standard license.
However, if you need to use individual additional components, such as SALESFORCE, and Pattern Search, then you must use an Enterprise
license.

There are multiple places where you can install your FileCloud license:

Admin Alert Dialog


The Dashboard's License Tab
The Dashboard's Settings Tab

It doesn't matter which one of these places you use; they both perform the same task.

After installation, to update or manage licenses, use the Dashboard's License tab or the Settings tab.

Admin Alert Dialog


During the initial setup, when you log in to the Admin Portal, you will see the Admin Attention Required dialog. This allows you to upload your license.
xml file and apply the license.

To install your license from the Admin dialog:

1. In the Invalid License File row, click Install License.


2. In the new section that appears, click Browse.
3. Locate the license.xml file, and then click Apply.
4. The installed license appears in green under the textbox.

121
Dashboard
If you close the Admin dialog without installing a license, you can always use the FileCloud dashboard to manage your licenses.

The Dashboard opens the same window as if, from the left navigation panel, you click on Settings, and then the License tab.

To install your license from the Dashboard:

1. Log in to the Admin Portal.


2. On the Home page, in the License Information section, click Manage.
3. On the License page, click the Choose File button.
4. Select the license.xml file and click OK.
5. On the License page, click Save.

Also see:

Installing FileCloud License On Multiple Sites


Viewing Your License Details

122
Installing FileCloud License On Multiple Sites
Prerequisite
Linux
Windows

If you are an administrator of a multi-site installation and need to update site license of all you sites, you can use the steps described below:

Prerequisite

Enable PHP CLI Mode

To run the following commands, PHP CLI mode needs to be enabled.

In Linux, edit the file /etc/php5/cli/php.ini and make sure the module mongo.so is enabled.
To enable mongo.so, add the following line at the end of file /etc/php5/cli/php.ini (if this line doesn't exist in the file)

extension=mongo.so

In Windows, the PHP cli mode is already enabled in FileCloud installer.

Linux
In a linux command shell, type the following commands. License installer script takes path to the new license file as input. After the command is executed,
the specified license will be installed on all sites.

NOTE: The license.xml file must be named as license.xml and copied to /resources/backup folder before the script can be run.

Install License in Linux

user@li111-150:~$ cd /var/www/html/resources/backup
user@li111-150:/var/www/html/resources/backup$ php licenseinstaller.php license.xml

Windows
In a windows command shell, type the following commands. License installer script takes path to the new license file as input. After the command is
executed, the specified license will be installed on all sites.

NOTE: The license.xml file must be named as license.xml and copied to /resources/backup folder before the script can be run.

Install License in Windows

C:\WINDOWS\system32>cd c:\xampp\htdocs\resources\backup
c:\xampp\htdocs\resources\backup>c:\xampp\php\php.exe licenseinstaller.php license.xml

123
Viewing Your License Details
License Components information is available in FileCloud version 18.2 and later.

It identifies the areas of FileCloud Server that you have purchased access to.

For information on the different license types, read about the Key Features on the Pricing page.

The details of your License are displayed in the following places:

The Admin portal dashboard - Use this to see quick details about your license, such as when it expires.
The License tab in the Settings screen - Use this to update your license or to see the license components that are available.

From the Dashboard

To review your license details:

1. Log in to the Admin Portal.


2. On the dashboard, License Information appears under under the System Summary.
3. In the upper-right corner, click Manage to go to the License tab in Settings, shown below.

In the Settings screen

124
To update your license details:

1. Log in to the Admin Portal.


2. From the left navigation panel, click Settings.
3. On the Manage Settings screen, click the License tab.
4. Review the license information.
5. In Components, make sure the features you need are listed.
6. To install a new license, click Choose File.

125
Configure the Managed Storage Path

FileCloud Server is sometimes called on-premises. This is because you are using the storage space you have locally in your infrastructure to store the files
managed by FileCloud Server.

Managed Disk Storage is just a path to the location where the user files are stored locally and can be accessed directly by FileCloud Server
When you specify the path to managed storage, you allow FileCloud complete control over the management of user content
Managed storage can be a path to file systems, a local hard disk, and Storage Area Network (SAN) or Network Area Storage (NAS) disks

When setting up FileCloud, a critical setting is the path where FileCloud stores its files.

Setting up Managed Storage Path for Local Storage is only needed if you are using FileCloud Local Storage.
If you are using Amazon S3 or OpenStack, you don't need to set this path.

In the following section, to display more information, click on a step.

To configure the storage path:

1. Use the Admin Attention Required dialog for the initial setup.

Initial Setup

On initial login into the Admin Portal, if the storage path is not set or not writable, an "Admin Attention Required" dialog is shown as below.

126
Type in the path to the storage location in the box. You can click on the "Check Path" button to verify that the path exists and write permissions are
available. Click on "Apply" button to set the storage path correctly.

Example Paths for Windows Installs: "c:\data", "e:\fileclouddata"

Example Path for Linux Installs: "/opt/fileclouddata"

127
2. Use the Admin portal to manage storage path changes.

Managing the Storage Path

To set or change storage path, open the FileCloud Admin Portal and then open the Settings->Storage Tab. Set the path as needed (for example on
Windows c:\filecloud, or on Linux /opt/filecloud) and finally save the settings. Note that making this change after users have started uploading the files
to the system will make many files missing unless the original files are carefully copied over to the new location.

Do not change the storage path to the new location without copying over ALL folders and file that exist in the old path. Not copying the old
data might lead to data loss.

128
3. After setting the path, you can rerun the install checks.

129
Enable MongoDB Authentication
By default, FileCloud installs the Mongo database server on the same machine as the web server without any authentication settings.

However, you may need to enable authentication for the following reasons:

Added security
Hosting the database server on a different machine than the web server.

Follow the steps here to enable authentication for MongoDB.

Set Up a Database User


A DB user has to be first created in MongoDB and this user can be later used in FileCloud for secure database access.
Assuming we will add a user with following details:

User Name Password

dbuser passw0rd1

Use a command line mongo client and execute the following commands to create the required DB user.

The following command lists all the databases in the system (depending on the configuration one or more dbs may not exist (or new ones may be present).
So it is important to set authentication for each of the DB in the system. (Ignore the "local" database that shows up when you type "show databases")

For MongoClient v3.0 and above

use admin
db.createUser( { user:"dbuser", pwd:"passw0rd1", roles:[ "root" ] })

For Mongo Client v 2.4

Mongo Client

> show databases


admin 0.078GB
tonidoauditdb 0.078GB
tonidoclouddb 0.078GB
tonidos3storage 0.078GB
tonidosettings 0.078GB
tonidostoragedb 0.078GB
tonidosyncdb 0.078GB

> use admin;


> db.addUser('dbuser','passw0rd1')
> use tonidoauditdb;
> db.addUser('dbuser','passw0rd1')
> use tonidoclouddb;
> db.addUser('dbuser','passw0rd1')
> use tonidostoragedb;
> db.addUser('dbuser','passw0rd1')
> use tonidosyncdb;
> db.addUser('dbuser','passw0rd1')
> use tonidosettings;
> db.addUser('dbuser','passw0rd1')

Upon executing all the above commands, 'dbuser' will be added as valid database user.

Configure Settings DB URL


FileCloud's settings database is where all the information is bootstrapped from. The default implicit URL for this database is "mongodb://127.0.0.1". Set this
URL explicitly to reflect the fact that a database user needs to be used and the database server resides on different server. To do this, edit the
configuration file WWWROOT/config/cloudconfig.php and add the following line:

130
Override Settings DB URL

define("TONIDOCLOUD_SETTINGS_DBSERVER", "mongodb://dbuser:[email protected]:27017");

In the above example, we assumed the database server is installed on a different machine (i.e., 192.168.1.102) than the webserver. In collocated
scenarios, 127.0.0.1 can be used as well.

Note: If you use special characters in the password, make sure to URI encode them. For example: using 'password@2090' as the password, you will need
to specify it like

mongodb://dbuser:password%402090@localhost:27017

Configure Other DB URLs In Config File


If you have never updated the database URLs in the admin UI, follow this sub-section. If not, skip to the next sub-section.

Other database URLs required for FileCloud needs to be changed to reflect the database user as well.
To do this, edit the configuration file WWWROOT/config/cloudconfig.php and update the following lines:

Update DB URLs in cloudconfig.php

// ... Cloud Database


define("TONIDOCLOUD_DBSERVER", "mongodb://dbuser:[email protected]:27017");
// ... Audit Database
define("TONIDOCLOUD_AUDIT_DBSERVER", "mongodb://dbuser:[email protected]:27017");
// ... Settings Database
define("TONIDOCLOUD_SETTINGS_DBSERVER", "mongodb://dbuser:[email protected]:27017");

and configuration file WWWROOT/config/localstorageconfig.php and update the following line:

Update DB URLs in localstorageconfig.php

// ... Cloud Database


define("TONIDO_LOCALSTORAGE_DBSERVER", "mongodb://dbuser:[email protected]:27017");

Configure Other DB URLs In Settings DB


If you have updated the database URLs in the admin UI, then changing the values in the config files as described above will not work.

In this case use a mongodb client and update the URLs with the following information.

Update settings database with a mongo client

Database: tonidosettings
Collection: sites
Records: {
"name" : "TONIDOCLOUD_DBSERVER",
"value" : "mongodb://dbuser:[email protected]:27017"
}, {
"name" : "TONIDOCLOUD_AUDIT_DBSERVER",
"value" : "mongodb://dbuser:[email protected]:27017"
}, {
"name" : "TONIDO_LOCALSTORAGE_DBSERVER",
"value" : "mongodb://dbuser:[email protected]:27017"
}

Enable MongoDB Security

131
Now that FileCloud is updated with the security info, enable security in MongoDB. To do this open the file mongodb.conf that can be typically found in the
following location:

Windows C:\xampp\mongodb\bin\mongodb.conf

Linux /etc/mongodb.conf

Edit this file and add/update with the following line. If the line is already there, ensure it is not commented.

Enable mongodb security in Windows and mongodb v2.x on Linux

# Turn on/off security. Off is currently the default


#noauth = true
auth = true

If you are using a version of MongoDB that creates a YAML conf file, you might need to enable authentication using the following format.

Enable mongodb v3.x on Linux

security:
authorization: enabled

Restart Services
Finally, it is necessary to restart both MongoDB and Apache to get the security in-place.

Note

In case of any issues, disable security in mongodb and fix the problems.
To disable security, mongodb auth has to be disabled and the database URLs has to be reverted back.

132
Enable FileCloud SSL Mode Connection To MongoDB
Introduction
By default, FileCloud will connect to a MongoDB server in plain text mode. Starting v14.x, FileCloud can be enabled to connect to MongoDB server in SSL
mode.

Enabling SSL Mode Connection


1. To enable SSL based connection to MongoDB server, edit the file WWWROOT/core/framework/slmongoclientcontext.class.php and replace the
contents of the file with the following:

Mongo Client

<?php
/*
* Copyright(c) 2015 CodeLathe LLC. All rights Reserved.
* This file is part of Tonido FileCloud http://www.tonido.com
*/
namespace core\framework;
defined('TONIDO_CLOUD_ROOT_DIR') or exit('Forbidden');
/**
* Description of slmongoclientcontext
*
* @author madhan
*/
class SLMongoClientContext{

public static $USECONTEXT = TRUE;

public static function getOptions(){


return array("ssl" => true);
}

public static function getContext(){


//$SSL_DIR = "c:\\xampp\\mongodb\\bin\\certs";
//$SSL_FILE = "CA_Root_Certificate.pem";
$ctx = stream_context_create(array(
"ssl" => array(
/* Certificate Authority the remote server certificate must be signed by */
//"cafile" => $SSL_DIR . DIRECTORY_SEPARATOR . $SSL_FILE,
"local_cert" => "c:\\xampp\\mongodb\\bin\\certs\\mongodb.pem",
/* Disable self signed certificates */
"allow_self_signed" => true,
/* Verify the peer certificate against our provided Certificate Authority root
certificate */
"verify_peer" => false, /* Default to false pre PHP 5.6 */
/* Verify the peer name (e.g. hostname validation) */
/* Will use the hostname used to connec to the node */
"verify_peer_name" => false,
/* Verify the server certificate has not expired */
"verify_expiry" => true, /* Only available in the MongoDB PHP Driver */
),
));
return array("context" => $ctx);
}
}

2. Modify the context parameters as necessary to suit your environment and save the file. There is no need to change any other MongoDB
connection URLs.
3. Restart MongoDB and apache servers. Now FileCloud should be able to connect to SSL enabled MongoDB server.

133
SSL Configuration
FileCloud runs on Apache web server.

Apache server can be configured to serve the website securely using HTTPS protocol.
To enable the HTTPS protocol, you will need an SSL certificate.

In the following section, to display more information, click on a question.

If you are using Active Directory and want to:

Add AD users
Change AD passwords
Secure the connection to Active Directory

Then you will need to configure additional settings and also install an SSL certificate on the AD server.

This topic does not relate to securing connections with your AD Server.

For that information, please read Connecting to AD via SSL

SSL (Secure Sockets Layer) is the standard security technology for establishing an encrypted link between a web server and a browser. This link
ensures that all data passed between the web server and browsers remain private and integral. SSL is an industry standard and is used by millions of
websites in the protection of their online transactions with their customers.

To be able to create an SSL connection a web server requires an SSL Certificate. When you choose to activate SSL on your web server you will be
prompted to complete a number of questions about the identity of your website and your company. Your web server then creates two cryptographic
keys - a Private Key and a Public Key.

The complexities of the SSL protocol remain invisible to your customers. Instead their browsers provide them with a key indicator to let them know
they are currently protected by an SSL encrypted session - the lock icon in the lower right-hand corner, clicking on the lock icon displays your SSL
Certificate and the details about it. All SSL Certificates are issued to either companies or legally accountable individuals.

To learn more about SSL, read knowledge base articles on the SSL web site.

To enhance the security of the Root certificate, two intermediate certificates are created from which SSL certificates are signed and issued.

An intermediate certificate is a subordinate certificate issued by the trusted root specifically to issue end-entity server certificates.

The result is a certificate chain that begins at the trusted root CA, through the intermediate and ending with the SSL certificate issued to you. Such
certificates are called chained root certificates.

Creating certificates directly from the CA root certificate increases the risk of root certificate compromise, and if the CA root certificate is compromised,
the entire trust infrastructure built by the SSL provider will fail. The usage of intermediate certificates for issuing SSL certificates to end entities,
therefore, provides an added level of security. You must install the intermediate certificate in your Web server along with your issued SSL certificate to
complete the trust chain and allow the certificate to be effective.

Once you’ve got your certificate files, seeing your file extension will allow you to know what’s in the file, and if you need to convert them.

File Extension Contents

*.pem Concatenated certificate container files

Frequently required for certificate installations when multiple certificates


are being imported as one file.

134
*.crt The *.crt and *.cer file formats are interchangeable and contain the
same information.
*.cer
the *.crt file is a Microsoft convention and can be easily converted to *.
cer.

An SSL certificate contains both:

*.key = the private key to the certificate

*.crt = the signed certificate

*.ca-bundle A file that contains root and intermediate certificates.

The end-entity certificate along with a CA bundle constitutes the


certificate chain.

The chain is required to improve compatibility of the certificates with


web browsers and other kind of clients.

This allows browsers to recognize your certificate so that no security


warnings appear.

*.pfx This is an archive file format for storing several cryptographic objects in
a single file.

contains the end-entity certificate (issued to your domain)


a matching private key
may optionally include an intermediate certification authority (a.k.a.
CA Bundle).

All this is wrapped up in a single file which is then protected with a pfx
password.

What do you want to do?

Use SSL on Windows

Use SSL on Linux

Convert a PFX to a PEM SSL Certificate

135
Use SSL on Windows
You can use the standard security technology to establish an encrypted link between the FileCloud server and a client browser.

This link ensures that all data passed between the web server and browsers remain private and integral.
SSL is an industry standard and is used by millions of websites in the protection of their online transactions with their customers.

After you install the SSL certificate on your Apache web server, there is no additional configuration you need to do in FileCloud Server. Once a
certificate is installed, all connections between to the FileCloud Server and clients are secured over SSL.

To Use SSL on Windows:

1. Create a CSR in the FileCloud Control Panel.


2. Submit the CSR to your SSL provider.
3. The provider will verify and then issue a SSL certificate in a *.crt file.
4. Install the certificate.
5. Follow the HTTPS Best Practices for FileCloud.

If you encounter issues using the FileCloud control panel, you can:

Manually create a CSR to receive an SSL certificate

Manually install a CRT file

136
Create a CSR in the FileCloud Control Panel
The ability to create and Install an SSL certificate from the FileCloud Control Panel is available in FileCloud Server version 14.0 and later.

When using SSL on Windows, you must create a Certificate Signing Request (CSR) to receive an SSL certificate.

A CSR is a data file that contains the Public Key and your domain details.
You will submit the CSR to your SSL provider.
Your provider will verify and then issue a SSL certificate in a .crt file.

If you encounter issues using the FileCloud control panel, you can:

Manually create a CSR to receive an SSL certificate

In the following section, to display more information, click on a topic.

To create a CSR in the FileCloud control panel:

1. On the FileCloud server, open the File Manager control panel.

137
2. Under Miscellaneous, click Create SSL CSR.
3. On the New CSR dialog box, fill in the following information.

Information Example Notes

Country Name US 2letter code

State TEXAS full name - no abbreviations

City Austin full city name

Organization Name Internet Widgits Pty Ltd company name

Organizational Unit Name Accounts Payable section name

Domain Name filecloud.IWPL.com server FQDN or YOUR name

Be sure to enter the actual server's fully


qualified name

filecloud.yourdomain.com

138
If it is a wildcard certificate for all sub
domains (for example for using multi
tenancy), then be sure to enter *.
yourdomain.com

*.yourdomain.com

4. Click Generate CSR.

139
Install a certificate using the FileCloud Control Panel
The ability to create and install an SSL certificate from FileCloud Control Panel is available in FileCloud Server version 14.0 and later.

The option to add an Intermediate Certificate is available in FileCloud Server version 18.2 and later.

After you receive an SSL certificate, you can use the FileCloud Control Panel to install it.

If you encounter issues using the FileCloud control panel, you can:

Manually install an SSL certificate in Windows

In the following section, to display more information, click on a topic.

To install an SSL Certificate using the FileCloud Control Panel:

1. On the server, from the Windows Start menu, select Open the FileCloud Control Panel.

140
2. Under Miscellaneous, click Install SSL Cert.
3. Your screen should look similar to the following example:

4. On the Install SSL Certificate dialog box, in SSL Certificate File, click Select.
5. Browse to the default location in: c:\xampp\htdocs\config\server.crt or to the place where the file is saved.
6. On the Install SSL Certificate dialog box, in SSL Private Key File, click Select.
7. Browse to the default location in: c:\xampp\htdocs\config\server.key or to the place where the file is saved.
8. Optionally, to install an intermediate certificate, on the Install SSL Certificate dialog box, in SSL Intermediate Certificate File, click Select.
9. Browse to the default location in: c:\xampp\htdocs\config\server-ca.crt or to the place where the file is saved.
10.

141
9.
10. Your screen should look similar to the following example:

11. On the Install SSL Certificate dialog box, click Install Certificates.
12. On the Confirm Installation dialog box, to install the provided certificate and key, click Yes.
13. When you see the Installed OK dialog box, click OK.
14. To allow the changes to take effect, restart the server.

142
Manually Create a CSR in Windows
When using SSL on Windows, you must create a Certificate Signing Request (CSR) to receive an SSL certificate.

A CSR is a data file that contains the Public Key and your domain details.
You will submit the CSR to your SSL provider.
Your provider will verify and then issue a SSL certificate in a .crt file.

You should use the FileCloud control panel to create a CSR. If you encounter issues, you can create the request manually.

Create a CSR using the FileCloud Control Panel

To manually create an SSL certificate, you can use the openssl tool included with FileCloud Server.

To manually create a CSR:

1. On the FileCloud server, navigate to the following directory:

c:\xampp\apache\bin

2. To open the tool, double-click OpenSSL.

3. To create a Private Server Key, type the following code: (If your SSL provider does not accept key lengths of 2048, a higher length of 4096 can be
used in the follwing command.)

C:\xampp\apache\bin>openssl genrsa -des3 -out server.key 2048 -config "C:\xampp\apache\conf\openssl.cnf"

Note

If you encounter any errors related to:

unable to open configuration file

Then run the following in the command prompt to set the path.

set OPENSSL_CONF=c:\xampp\apache\conf\openssl.cnf

4. To create a Certificate Request (CSR), type the following command:

C:\xampp\apache\bin>openssl req -new -key server.key -out server.csr -config "C:\xampp\apache\conf\openssl.cnf"

5. You will be prompted to enter the following information:

Information Example Notes

Country Name US 2letter code

State or Province Name TEXAS full name - no abbreviations

Locality Name Houston full city name

Organization Name Internet Widgits Pty Ltd company name

Organizational Unit Name Accounts Payable section name

Common Name filecloud.IWPL.com server FQDN or YOUR name

Be sure to enter the actual server's fully qualified


name

filecloud.yourdomain.com

143
If it is a wildcard certificate for all sub domains
(for example for using multi tenancy), then be
sure to enter *.yourdomain.com

*.yourdomain.com

Email Address [email protected]

A challenge password Use the same passphrase you typed in when


opening the tool.

6. Apache won't start up properly if the key is secured with passphrase, so to remove it, type the following command:

copy server.key server.key.secure


openssl rsa -in server.key.secure -out server.key

7. You can now submit the CSR to your SSL provider.

The provider will sign and give you an SSL certificate usually called as server.crt.

144
Manually Install SSL Certificates for FileCloud on Windows
This section explains how to install the SSL certificate you received from your certificate provider.

You should use the FileCloud control panel to install an SSL certificate. If you encounter issues, you can install the certificate manually.

Install a certificate using the FileCloud Control Panel

In the following section, to display more information, click on a step.

To install an SSL certificate:

To enable SSL in Apache, the following are required:

A signed certificate received from the certifying authority


Your private key
The location where FileCloud is installed, if not under the default location c:\xampp

To install the SSL certificates:

1. Rename your signed certificate to: server.crt


2. Rename your private key file to: server.key
3. Copy these two files using the following commands, replacing the xampp directory with the appropriate path if necessary:

copy server.crt C:\xampp\apache\conf\ssl.crt\


copy server.key C:\xampp\apache\conf\ssl.key\

If your signed certificate needs a certificate chain file containing all the intermediate certificates, then you need to install the certificate chain file as
well. To do this, you need to edit a configuration file and specify the chain file's location.

If your intermediate certificates are not part of the standard ca-bundle, you must:

Install the intermediate certificates on the FileCloud server

This will prevent issues with the Desktop client apps.

To install the certificate chain file:


1. To specify the location, open the following file for editing:

C:\xampp\apache\conf\extra\httpd-ssl.conf

2. Find the following line:

#SSLCertificateChainFile "conf/ssl.crt/server-ca.crt"

3. Remove the hashtag (#) from the beginning of the line so that it is no longer a comment and looks like the following line:

SSLCertificateChainFile "conf/ssl.crt/server-ca.crt"

4. Save and close the file.

5. Rename the chain file to the following:

server-ca.crt

145
6. Copy the certification chain file into the conf directory using the following command:

(If FileCloud is installed not under the default location c:\xampp, then copy the file to the appropriate location.)

copy server-ca.crt C:\xampp\apache\conf\ssl.crt\

7. Open the following file for editing:

C:\xampp\apache\conf\extra\httpd-ssl.conf

8. Find the following line:

ServerName "www.example.com:443"

9. Change the ServerName in quotes to your domain name.

In the serverName do not use * . For wild card certificates, use the FQDN excluding the *

The domain name should also match the FQDN/common name field of your CSR. Certificate Signing Request (CSR) is a data file that contains the
Public Key and your domain details.

After you have completed:

1. Installing the SSL certificate


2. Installing the chain file

You must restart the Apache server.

This will activate the new SSL certificates and allow Apache to operate in HTTPS mode.

146
Use SSL on Linux
You can use the standard security technology to establish an encrypted link between the FileCloud server and a client browser.

This link ensures that all data passed between the web server and browsers remain private and integral.
SSL is an industry standard and is used by millions of websites in the protection of their online transactions with their customers.

After you install the SSL certificate on your Apache web server, there is no additional configuration you need to do in FileCloud Server. Once a
certificate is installed, all connections between to the FileCloud Server and clients are secured over SSL.

To Use SSL on Linux:

1. Create a CSR for FileCloud.


2. Submit the CSR to your SSL provider.
3. The provider will verify and then issue a SSL certificate in a *.cer file.
4. Install the certificate on Ubuntu.
5. Follow the HTTPS Best Practices for FileCloud.

147
Create a CSR for FileCloud
When using SSL on Linux, you must create a Certificate Signing Request (CSR) to receive an SSL certificate.

A CSR is a data file that contains the Public Key and your domain details.
You will submit the CSR to your SSL provider.
Your provider will verify and then issue a SSL certificate in a .cer file.

To create an CSR for you FileCloud Server:

1. To generate a request, use the following command: (The key for the SSL certificate is stored in the server.key file.)

openssl req -new -newkey rsa:2048 -nodes -keyout server.key -out server.csr

2. You will be prompted to enter the following information:

Information Example Notes

Country Name US 2letter code

State or Province Name TEXAS full name - no abbreviations

Locality Name Houston full city name

Organization Name Internet Widgits Pty Ltd company name

Organizational Unit Name Accounts Payable section name

Common Name filecloud.IWPL.com server FQDN or YOUR name

Be sure to enter the actual server's fully qualified


name

filecloud.yourdomain.com

If it is a wildcard certificate for all sub domains


(for example for using multi tenancy), then be
sure to enter *.yourdomain.com

*.yourdomain.com

Email Address [email protected]

Please enter the following extra attributes to be sent with your certificate request:

A challenge password

An optional company name

148
Install an SSL certificate on Ubuntu
It’s important to use SSL any time sensitive data is involved such as personal information, and authentication credentials such as passwords.
Your Linux system should be:

running Ubuntu
accessible over the internet
using a valid DNS entry that points to your Linux system

1. Add SSL support in Apache. (Enable SSL only if it is not enabled already)

> sudo a2enmod ssl

2. Copy the SSL certificate provided by your certification provider and SSL private key file to the apache directory. The certificate file is renamed as
server.crt and intermediate chain file renamed to server-ca.crt and private key file is renamed as server.key

> sudo mkdir -p /etc/apache2/ssl


> sudo cp server.crt /etc/apache2/ssl
> sudo cp server-ca.crt /etc/apache2/ssl
> sudo cp server.key /etc/apache2/ssl

3. Modify your webserver configuration (/etc/apache2/sites-enabled/000-default.conf) to use the issued ssl certificate. (NOTE: The ServerName
must match the server name in the SSL certificate)

Ubuntu 14.04 or older

<VirtualHost *:443>
# Admin email, Server Name (domain name) and any aliases
ServerAdmin [email protected]
ServerName server1.xyz.com
# Index file and Document Root (where the public files are located)
DirectoryIndex index.php
DocumentRoot /var/www
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateChainFile /etc/apache2/ssl/server-ca.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key

</VirtualHost>

Ubuntu 16.04

<VirtualHost *:443>
# Admin email, Server Name (domain name) and any aliases
ServerAdmin [email protected]
ServerName server1.xyz.com

149
# Index file and Document Root (where the public files are located)
DirectoryIndex index.php
DocumentRoot /var/www/html
<Directory /var/www/html>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateChainFile /etc/apache2/ssl/server-ca.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key

</VirtualHost>

4. Ensure that /etc/apache2/ports.conf has Listen 443 (Should already be there)


5. Restart Apache.

> sudo /etc/init.d/apache2 restart

150
Converting Existing PFX SSL Certificate to PEM SSL
Certificate
Sometimes you will have an existing PFX file that you want to convert to PEM format. Usually this is due to specific server requirements.

To convert PFX to PEM:

1. To find the password used when the PFX was exported, use the following commands:

Linux $ openssl pkcs12 -in [yourfile.pfx] -nocerts -out [keyfile-encrypted.key]

$ openssl pkcs12 -in [yourfile.pfx] -nocerts -nodes -out [keyfile-


encrypted.key] # use this command if the first command generates
empty certificate.

Windows C:\xampp\apache\bin\openssl pkcs12 -in [yourfile.pfx] -nocerts -out


[keyfile-encrypted.key]

C:\xampp\apache\bin\openssl pkcs12 -in [yourfile.pfx] -nocerts -nodes


-out [keyfile-encrypted.key] # use this command if the first command
generates empty certificate.

2. Convert encrypted key to unencrypted key:

Linux $ openssl rsa -in [keyfile-encrypted.key] -out server.key

Windows C:\xampp\apache\bin\openssl rsa -in [keyfile-encrypted.key] -out


server.key

3. Extract the server certificate and convert to PEM format:

Linux $ openssl pkcs12 -in [yourfile.pfx] -clcerts -nokeys -out server.crt

Windows C:\xampp\apache\bin\openssl pkcs12 -in [yourfile.pfx] -clcerts -nokeys


-out server.crt

4. Extract the server certificate chain:

Linux $ openssl pkcs12 -in [certificate.pfx] -cacerts -nokeys -out [server-ca.


crt]

Windows C:\xampp\apache\bin\openssl pkcs12 -in [certificate.pfx] -cacerts -


nokeys -out [server-ca.crt]

5. (optional) In case your file is in p7b format, extract the server certificate and convert to PEM format

Linux $ openssl pkcs7 -print_certs -in [yourfile.p7b] -out server.crt

Windows C:\xampp\apache\bin\openssl pkcs7 -print_certs -in [yourfile.p7b] -out


server.crt

Now you can use the server.crt, server-ca.crt and server.key files appropriately.

151
Use Let's Encrypt to Renew SSL Certificates
Starting with Version 19.3, FileCloud supports auto-renewing SSL certificates with Let's Encrypt.

To auto-renew your SSL certificate, you must first contact the Let's Encrypt team.

To use Let's Encrypt's HTTP-01 challenge for adding/renewing SSL certificates:


1. Contact the Let's Encrypt team and request auto-renewal of your SSL certifcate.
2. Open the following file:
Windows: C:\xampp\htdocs\.htaccess

Linux: /var/www/html/.htaccess

3. Find the following code:

#--------------------------------------------------
# Let's Encrypt Support
# RewriteRule ^.well-known/(.*)$ .well-known/$1 [L]
#--------------------------------------------------

4. Remove # in front of:


RewriteRule ^.well-known/(.*)$ .well-known/$1 [L]

so that the code appears as:

#--------------------------------------------------
# Let's Encrypt Support
RewriteRule ^.well-known/(.*)$ .well-known/$1 [L]
#--------------------------------------------------

5. Save and close .htaccess.

152
HTTPS Best Practices for FileCloud
FileCloud Server recommends that you run all servers in a production environment only on:

HTTPS (SSL)
Port 443

This ensures that all communications between clients and FileCloud server are completely encrypted.

To access these secured sites, users will have to type in:

https://<SITENAME>

Best Practice Reason Steps

Disable the existing HTTP port. So that FileCloud can be accessed only To Disable HTTP (port 80) for Windows:
securely via HTTPS.
1. Open the webserver config file for editing:
Setting redirects from HTTP to HTTPS is not
recommended because mobile apps and other c:\xampp\apache\conf\httpd.conf
clients do not follow redirects (for security) and

Therefore removing the HTTP port completely is 2. Comment out the line with Listen 80.
the best option. 3. Save and close the file.
4. Restart the server.

If you must use a redirect, Configure HTTP To Disable HTTP (port 80) for Linux:
SSL Redirects.
1. Open the webserver config file for editing:

/etc/apache2/ports.conf

2. Comment out the line with Listen 80.


3. Save and close the file.
4. Restart the server.

Verify your certificates are valid. If you have an invalid SSL configuration, your You can check the validity of the SSL certificate
users would receive various errors on the by testing your install against a SSL certificate
browser, and iPhone/iPad apps cannot preview checker like https://www.sslshopper.com/ssl-
Office documents. checker.html

Provide your FileCloud URL and it will report


any potential problems your SSL installation
might have.

These tools should report no errors for your


FileCloud to function properly in SSL mode.

Change the default listening port (80). If you have are conflicts with other ports. For Windows:

1. Open the following file for editing:

c:\xampp\apache\conf\httpd.
conf

2. Locate the following two lines:

Listen 80

ServerName localhost:80

3. Change these lines to the following:

Listen your_new_port

ServerName localhost:
your_new_port

4. Save and close the file.

For Linux:

1. Open the following file for editing:

153
1.

/etc/apache2/ports.conf

2. Locate the following line:

Listen 80

3. Change it to

Listen Your_new_port

4. Open the following file for editing:

/etc/apache2/sites-enabled/000-
default.conf

5. Locate the following line

<VirtualHost *:80>

6. Change it to

<virtualHost _default:
your_new_port>

7. Save and close the file.

Change the default HTTPS port (443). If you have are conflicts with other ports. For Windows:

1. Open the following file for editing:

c:
\xampp\apache\conf\extra\httpd-
ssl.conf

2. Locate the following line

Listen 443

3. Change it to

Listen your_new_port

4. Locate the following line

<VirtualHost _default_:443

5. Change it to

<VirtualHost _default_:
your_new_port>

6. Save and close the file.

For Linux:

1. Open the following file for editing:

/etc/apache2/ports.conf

2. Locate the following lines

<IfModule mod_ssl.c>Listen 443<


/IfModule>

3. Change it to

<IfModule mod_ssl.c>Listen
Your_New_Port</IfModule>

4. Open the following file for editing:

/etc/apache2/sites-available
/default-ssl

5. Locate the following line:

<VirtualHost _default_:443>

6. Change it to

<VirtualHost _default_:
your_new_port>

154
7. Save and close the file.

Disable server information in headers. To prevent the Web application from disclosing
the server name and server version in the 1. Open the Apache configuration file:
response header. Ubuntu location: /etc/apache2/apache2.conf
CentOS location: /etc/httpd/conf/httpd.conf
Windows location: C:
\xampp\apache\conf\httpd.conf
2. Add the following:

ServerSignature Off
ServerTokens Prod

3. Restart the Apache server.

HTTP To HTTPS Redirects


It is recommended that you configure FileCloud Server so that it can be accessed securely only via HTTPS.

Setting redirects from HTTP to HTTPS is not recommended because mobile apps and other clients do not follow redirects (for security).

Therefore removing the HTTP port completely is the best option.

If you must use a redirect, add the following lines:

<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>

In Windows, the above lines should we added to file c:\xampp\apache\conf\extra\httpd-vhosts.conf. Restart the apache server.
Also make sure the following line is uncommented in the file C:\xampp\apache\conf\httpd.conf.

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

In Linux, the above lines should be added to the /etc/apache.d/sites-enabled/000-default.conf file. If you already have a VirtualHost directive, add
only the lines starting with "Rewrite". Restart the apache server.

155
Configure HTTP SSL Redirects
It is recommended that you configure FileCloud Server so that it can be accessed securely only via HTTPS.

Setting redirects from HTTP to HTTPS is not recommended because mobile apps and other clients do not follow redirects (for security).

Therefore removing the HTTP port completely is the best option.

HTTPS FileCloud Best Practices

If you must use a redirect, you will need to edit the webserver config file.

For Windows:

1. Open the following file for editing:

c:\xampp\apache\conf\extra\httpd-vhosts.conf

2. Add the following code

<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>

3. Save and close the file.


4. Open the following file for editing:

C:\xampp\apache\conf\httpd.conf

5. Make sure the following Include line is uncommented:

# Virtual hosts
Include conf/extra/httpd-vhosts.conf

6. Save and close the file.


7. Restart the server.

For Linux:

1. Open the following file for editing:

/etc/apache.d/sites-enabled/000-default.conf

2. Add the following code: ( If you already have a VirtualHost directive, add only the lines starting with "Rewrite". )

<VirtualHost *:80>
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
</VirtualHost>

3. Save and close the file.


4. Restart the server.

156
Changing a Default Port or Web Server Setting
The ports and Web servers used by FileCloud are normally set during installation. After installation is completed, if you need to, you can change the default
listening ports and Web servers.

By default, FileCloud uses these 3 ports:

80 (web server)
443 (web server)
27017 (database)

If other programs are using these ports, the FileCloud server will not start up properly.

You might want to change the port numbers or Web servers in some of the following scenarios:

You need to disable anything that uses port 80 and 443


You want Apache to run on non standard ports or servers or use firewall rules
You need to use IIS on standard ports

It is also recommended to disable HTTP port on the FileCloud server.

To change the ports, you will need to open the FileCloud Control Panel.

157
To change a port or Web server setting:

1. On the server, from the Windows Start menu, select the FileCloud Control Panel, or double-click the xampp/cloudcp.exe file.
2. In the Servers section, for Webserver, click Stop.
3. Change the Port configuration according to HTTPS Best Practices for FileCloud.
4. To start the Webserver, click Start next to Webserver.
5. In the Servers section, for Database, click Stop, then Config.
6. Make your changes, save them, and next to Database, click Start.
7. If you have changed the default Web server, open localconfig.php at:
Windows Location: XAMPP DIRECTORY/htdocs/config/localconfig.php
Linux Location: /var/www/config/localconfig.php
and add the following, replacing n.n.n.n with the correct IP address.

define("TONIDOCLOUD_APACHE_BIND_IP", "n.n.n.n");

158
159
SELinux Policies For FileCloud Installation
SELinux is a Linux kernel security module that defines the access and transition rights of every user, application, process, and file on the system.

It then governs the interactions of these entities using security policies that specifies how strict or lenient a given Linux installation should be.
It is available as part of distros like Red Hat Enterprise Linux and CentOS.

In order to use Filecloud on a selinux enforcing OS, the following steps need to be followed.

1) If SELinux is disabled, it needs to be enabled. For that, use the below command

setenforce 1

2) To allow writable access to folders used by FileCloud, use the following commands. These commands label the mentioned folder and it's contents with
required context.

For a managed storage path "/opt/fileclouddata" :

semanage fcontext -a -t httpd_sys_rw_content_t /opt/fileclouddata.*

restorecon -Rv /opt/fileclouddata

For default FileCloud install folder path "/var/www/html"

semanage fcontext -a -t httpd_sys_rw_content_t /var/www/html.*

restorecon -Rv /var/www/html

semanage fcontext -a -t httpd_sys_script_exec_t /var/www/html/thirdparty/prop/p23l

restorecon -Rv /var/www/html/thirdparty/prop/p23l

Add all additionally required folders (such Network folders) using semanage and restorecon commands

3) To allow FileCloud access to services like MongoDB and Solr, use the following commands

setsebool -P httpd_can_network_connect_db 1

setsebool -P httpd_can_network_connect 1

setsebool -P httpd_builtin_scripting 1 # Enabled by default

Optional

Apart from the above steps, you can do SELinux filesystem auto labeling, or if firewall or iptables is running on the system, then the below commands need
to be executed.

Selinux

-for SELinux to do auto labeling of the whole filesystem after a reboot we do this command, this command is used generally with a new system:

touch /.autorelabel; reboot

Iptables

To allow FileCloud public access, use the below commands.

iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT # Use only if HTTPS not enabled : This enables access on unsecure HTTP
port 80

iptables -A INPUT -p tcp -m tcp --dport 443 -j ACCEPT

Firewalld

To allow FileCloud public access, use the below commands.

160
firewall-cmd --add-service=http --zone=public --permanent # Use only if HTTPS not enabled : This enables access on unsecure
HTTP port 80

firewall-cmd --add-service=https --zone=public --permanent

firewall-cmd --reload

Troubleshooting

In Some cases, Selinux may cause problems with services running Filecloud, the proper troubleshooting need to be done in order to identify the missing
policies to make different services work properly.

On Redhat based Linux systems the first place to look for SELinux warnings is /var/log/messages, where you will find different warnings with their
explanation and the command to execute in order to add the related policy.

another place to look for SElinux logging messages and it depends on the Linux distribution is /var/log/audit/audit.log, you will find a detailed audit log file
and its very verbose which will help you investigate your problem.

once you identified the missing policy you can add it with "setsebool -P", knowing that -P will make all pending values written to the policy file on disk. So
they will be persistent across reboots.

some of the SElinux command that can be added to make Filecloud work properly depending on the use case and architecture are :

setsebool -P httpd_can_network_connect_db 1

setsebool -P httpd_can_network_connect 1

setsebool -P httpd_builtin_scripting 1 # Enabled by default

setsebool -P httpd_execmem 1

setsebool -P httpd_use_nfs 1

161
Installation Troubleshooting

Unexpected problems can happen when you are installing or configuring your new FileCloud software.

The reasons vary, depending on your computer, your operating system, network speed, license, and other factors.

In the following section, to display more information, click on a topic.

The following list presents some of the issues we've encountered.

FileCloud Server not starting on Windows


If FileCloud Webserver or Database does not startup, it is most likely that another process is using the ports used by the Webserver and the
Database. By default, FileCloud uses these 3 ports (80, 443, 27017), so if other programs are using these ports, the servers will not start up properly.

Most common applications that use these ports are Microsoft IIS, Skype, TeamViewer.

To figure out which application is using this port, open a command prompt and type the following command.

netstat -ano | find "LIST"

162
You can look at the process using ports 80, 443 or 27017. (for example 0.0.0:80).
The right most column shows the process ID of the process using that port.

You can get the name of the process, by

tasklist /svc /PI "PID eq 988"

GUI Option

Alternative option to see Proccess running on ports 80,443 or 27017 is through GUI. Go to Start>>All Programs>>Accessories>>System
Tools>>Resource Monitor (or Run resmon.exe)

PID (4) - Image (System) running on port 80 implies IIS may be running. Stop the IIS and try to restart Apache.

163
Common Services Interfering with Ports using by FileCloud Server

Other Apps Using same Network Services

WWW Publishing Service

Microsoft IIS

Microsoft Skype

HTTPD.sys

For 2012 server, you might need to do this

Windows server 2012

net stop http /y


sc config http start= disabled

You might need to reboot after this

https://www.devside.net/wamp-server/opening-up-port-80-for-apache-to-use-on-windows

Mod Rewrite Setup Check Fails during Install


1. Verify that the mod_rewrite apache module is properly installed and activated
2. In Apache configuration file for the site, ensure "AllowOverride All" is set correctly for the site.
3. Ensure, that the Apache .htaccess file is present in the WWW Root (say /var/www or c:\xampp\htdocs)

For HTTPS sites if everything else works but mod rewrite check error still is reported you can ignore it.

If you still have questions, send an email to our FileCloud Support Team ([email protected])

164
165
Mount a Share that FileCloud Can Access
You might need to mount a network share in the following situations:

For installation purposes


To allow FileCloud server to use storage from devices over the network for both local storage as well as external shares

Use these instructions to mount a share that FileCloud can access without encountering any permission issues.

FAQ's

In the following section, to display more information, click on a question.

Common Internet File System (CIFS) is a file-sharing protocol that provides an open and cross-platform mechanism for requesting network server files
and services.

CIFS is based on the enhanced version of Microsoft’s Server Message Block (SMB) protocol for Internet and intranet file sharing.

CIFS is typically used in workstation and server OSs and was a native file-sharing protocol in Windows 2000.

CIFS is also used in embedded and appliance systems.


Recent storage products, like Storage Area Network (SAN) and Network Access Server (NAS), are based on CIFS.

Network File System (NFS) is a distributed file system protocol originally developed by Sun Microsystems in 1984.

This file system allows a user on a client computer to access files over a computer network much like local storage is accessed.
NFS, like many other protocols, builds on the Open Network Computing Remote Procedure Call (ONC RPC) system.
The NFS is an open standard defined in Request for Comments (RFC), allowing anyone to implement the protocol.

Mounting Scenarios
Shares are mounted using command line statements.

CIFS on Windows CIFS on Linux

NFS on Linux

166
Mount a CIFS Share on Linux for FileCloud
You might need to mount a CIFS network share on Linux, so that FileCloud server can use storage from devices over the network for both local storage as
well as external shares.

Use these instructions to mount a CIFS share in a way that prevents that FileCloud from encountering any permission issues.

Assumptions
Parameter Value

Remote CIFS share path //192.168.1.120/storage

Local mount path /mnt/storage

CIFS user username

CIFS password password

Apache user uid 33. Note: check your server for the right uid

Apache user gid 33. Note: check your server for the right gid

Pre-requisites
Ensure the command mount.cifs is present in your distro. Here is the list of packages that provide this utility in different distros.

Required Packages

Ubuntu: cifs-utils

Installing cifs-utils in Ubuntu

user@host:~$ sudo apt-get update


user@host:~$ sudo apt-get install cifs-utils

Mounting
Use the following command to mount the CIFS share

Command Line

user@host:~$ mount -t cifs -o username=username,password=password,uid=33,gid=33,rw,nounix,iocharset=utf8,


file_mode=0777,dir_mode=0777 //192.168.1.120/storage /mnt/storage

or if you have credential files at /root/.this-creds-file


user@host:~$ mount -t cifs -o credentials=/root/.the-creds-file,uid=33,gid=33,rw,nounix,iocharset=utf8,
file_mode=0777,dir_mode=0777 //192.168.1.120/storage /mnt/storage

Auto Mounting
To perform auto mounting of windows share, you need to create a password file and use that in /etc/fstab. Follow the steps here:

1. Create a file /root/.smbcredentials with the following content.

Command Line

username=winuser
password=winpass

167
Here winuser and winpass are the username and password for the remote CIFS share.
2. Change the permissions such that only root can read the file.

Command Line

# sudo chmod 700 /root/.smbcredentials

3. Now add the following line in /etc/fstab file.

Command Line

//192.168.1.120/storage /mnt/storage cifs credentials=/root/.smbcredentials,uid=33,gid=33,rw,


nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

4. Test if the line added in the fstab file works.

Command Line

# sudo mount -a
If you are getting any error while mounting like " host not found ", add version as below at the end
of dir_mode=0777 as shown in the below//192.168.1.120/storage /mnt/storage cifs credentials=/root/.
smbcredentials,uid=33,gid=33,rw,nounix,iocharset=utf8,file_mode=0777,dir_mode=0777,vers=3.0 0 0

Now the remote share should be mounted at /mnt/storage.

168
Mount an NFS share on Linux for FileCloud
FileCloud server might need use storage from devices over network for both local storage as well as external shares. This document explains how to
mount a NFS network share on Linux.

Pre-requisites

Required Packages

Ubuntu: nfs-common

Installing nfs-common in ubuntu

user@host:~$ sudo apt-get update


user@host:~$ sudo apt-get install nfs-common

Mounting
Use the following command to mount the NFS share

Commandline

user@host:~$ mount simpson.example.com:/misc/export /misc/local

In this command, simpson.example.com is the hostname of the NFS file server, /misc/export is the directory that simpson is exporting, and /misc/local is
the location to mount the file system on the local machine. After the mount command runs (and if the client has proper permissions from the simpson.
example.com NFS server) the client user can execute the command ls /misc/local to display a listing of the files in /misc/export on simpson.example.com.

The mount point directory on local machine (/misc/local in the above example) must exist.

169
Mount CIFS Shares from Windows Command Line
Connect Network Drive
To map a network drive from windows command line:

1. Click Start, and then click Run .


2. In the Open box, type cmd to open command line window.
3. Type the following, replacing Z: with drive letter you want to assign to the shared resource:

net use Z: \\computer_name\share_name /PERSISTENT:YES

Disconnect Network Drive


To disconnect a mapped drive:

1. Open command line window.


2. Type the following, replacing X: with drive letter of the shared resource:

net use Z: /delete

170
Storage and Client Application Limits
One of FileCloud's most important features is the number of different storage options it offers for the user website and client applications. When choosing
your storage options, consider the limitations of each option. The following table lists the most common limitations to consider when using FileCloud with
Network Folders, including Drive and Sync applications. Where applicable, the table includes ways of working around these limitations:

Server Component or Client Application Description of the limitation

Network Folders Since Network Folders are stored outside of FileCloud, offline syncing of
files using the FileCloud Sync app may be slower and cause more server
CPU load then offline syncing with Managed Storage.

If offline syncing of folders with 5,000 folders or more is needed, we


recommend that you use Managed Storage.

Folder and File listings may be slower: Depending on the network


connectivity to the Network Share, it may take more time to access and list
files and folders in Network Folders than in Managed Storage.

When using Network Folders on Windows, you cannot access files or


folders if the entire path exceeds 256 characters.

Files starting with "." are not supported in network folders

FileCloud Sync App & FileCloud Drive App Windows Operating Systems only allow file and folder names of 256
characters or less, so if an entire file path and name exceed 256
characters, you cannot access it locally using Windows Explorer.

Shorten the name or move the file or folder to a higher-level folder within
FileCloud.

Names Ending with "." or ","


Files and folders ending with these characters cause processing errors.

Rename these files and folders.

FileCloud Sync and FileCloud Drive don't sync files with characters that
are incompatible with certain operating systems.

Rename them to something more suitable for use across multiple


operating systems.

Invalid characters are: * < > : \ / | ? ~

The following files are not uploaded:

tonido.db
Thumbs.db
desktop.ini
files ending with .tmp
files ending with .lnk
files or folders ending with space
.tonidocache
files starting with Conflict_
sync.ico
.ds_store
hidden files (usually files starting with . in Linux and files with a
hidden attribute in Windows)
file names and file extensions which are restricted by the server
admin
files that are in use (locked by the system or any other application)

Beginning in Version 19.1, FileCloud supports overriding file type


restrictions. To allow users to sync file types such as lnk, ini and thumbs.
db, as well as hidden files, use the allowedfilelist option on the page XML
Options for Sync.

FileCloud Drive App The FileCloud Drive App supports Windows 8+. It can be installed on
Windows 7; however, we do not provide support since the components
used are no longer supported in Windows 7.

If Sophos Antivirus is installed, Drive application performance with large


files (10MB+) is impacted.

If a folder in FileCloud (or a Network Folder) has over 1K files and folders
inside it, Drive can take approximately 30 seconds or more to list the files
/folders, depending on folder content, network speed, Internet access
speed, and so on. In some cases, it can fail to list the folder's content.

171
We recommended that you reorganize the content in lower count
subfolders (-1K).

Network Folder and File listings may be slower: Depending on the network
connectivity to the Network Share, it may take more time to access and list
files and folders in Network Folders than in Managed Storage.

172
Mounting CIFS and NFS Shares
How to Mount CIFS Shares from Windows Command Line
How to properly mount a CIFS share on Linux for FileCloud
How To properly mount a NFS share on Linux for FileCloud

173
How to Mount CIFS Shares from Windows Command Line
Connect Network Drive
To map a network drive from windows command line:

1. Click Start, and then click Run .


2. In the Open box, type cmd to open command line window.
3. Type the following, replacing Z: with drive letter you want to assign to the shared resource:

net use Z: \\computer_name\share_name /PERSISTENT:YES

Disconnect Network Drive


To disconnect a mapped drive:

1. Open command line window.


2. Type the following, replacing X: with drive letter of the shared resource:

net use Z: /delete

174
How to properly mount a CIFS share on Linux for FileCloud
You might need to mount a CIFS network share on Linux, so that FileCloud server can use storage from devices over the network for both local storage as
well as external shares.

Use these instructions to mount a CIFS share in a way that prevents that FileCloud from encountering any permission issues.

Assumptions
Parameter Value

Remote CIFS share path //192.168.1.120/storage

Local mount path /mnt/storage

CIFS user username

CIFS password password

Apache user uid 33. Note: check your server for the right uid

Apache user gid 33. Note: check your server for the right gid

Pre-requisites
Ensure the command mount.cifs is present in your distro. Here is the list of packages that provide this utility in different distros.

Required Packages

Ubuntu: cifs-utils

Installing cifs-utils in Ubuntu

user@host:~$ sudo apt-get update


user@host:~$ sudo apt-get install cifs-utils

Mounting
Use the following command to mount the CIFS share

Command Line

user@host:~$ mount -t cifs -o username=username,password=password,uid=33,gid=33,rw,nounix,iocharset=utf8,


file_mode=0777,dir_mode=0777 //192.168.1.120/storage /mnt/storage

or if you have credential files at /root/.this-creds-file


user@host:~$ mount -t cifs -o credentials=/root/.the-creds-file,uid=33,gid=33,rw,nounix,iocharset=utf8,
file_mode=0777,dir_mode=0777 //192.168.1.120/storage /mnt/storage

Auto Mounting
To perform auto mounting of windows share, you need to create a password file and use that in /etc/fstab. Follow the steps here:

1. Create a file /root/.smbcredentials with the following content.

Command Line

username=winuser
password=winpass

175
Here winuser and winpass are the username and password for the remote CIFS share.
2. Change the permissions such that only root can read the file.

Command Line

# sudo chmod 700 /root/.smbcredentials

3. Now add the following line in /etc/fstab file.

Command Line

//192.168.1.120/storage /mnt/storage cifs credentials=/root/.smbcredentials,uid=33,gid=33,rw,


nounix,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

4. Test if the line added in the fstab file works.

Command Line

# sudo mount -a

Now the remote share should be mounted at /mnt/storage.

176
How To properly mount a NFS share on Linux for FileCloud
Introduction
FileCloud server might need use storage from devices over network for both local storage as well as external shares. This document explains how to
mount a NFS network share on Linux.

Pre-requisites

Required Packages

Ubuntu: nfs-common

Installing nfs-common in ubuntu

user@host:~$ sudo apt-get update


user@host:~$ sudo apt-get install nfs-common

Mounting
Use the following command to mount the NFS share

Commandline

user@host:~$ mount simpson.example.com:/misc/export /misc/local

In this command, simpson.example.com is the hostname of the NFS file server, /misc/export is the directory that simpson is exporting, and /misc/local is
the location to mount the file system on the local machine. After the mount command runs (and if the client has proper permissions from the simpson.
example.com NFS server) the client user can execute the command ls /misc/local to display a listing of the files in /misc/export on simpson.example.com.

The mount point directory on local machine (/misc/local in the above example) must exist.

177

You might also like