Efficient and secure file storage software manages file creation, sharing and access control. It offers scalable storage options and ensures data protection with backup and disaster recovery options. The software enables seamless collaboration, streamlined workflows and centralized data management.
The Fstorage software comprises of an ANSI C and C++ API. However, if you prefer to use the Python or PHP API, you must first install it using the given link. In essence, both the Fstorage Server and Fstorage APIs are supported on Linux and FreeBSD. An essential feature is that stored files can be streamed or hosted with the Nginx HTTP server (ngx_http_fstorage_module) over HTTP protocol directly from the server filesystem.
Here's how Fstorage functions: Communication between the FS_SRV server and FS_CLI client is quite seamless:
1. Sending File:
Firstly, FS_CLI selects FS_SRV to connect to, and if the operation fails, FS_CLI chooses another backend server from the config variable 'backends' and then,
2. FS_SRV verifies if the FS_CLI's address (config variable 'allowed_ips') is trusted, and if the handshake SUCCESED, FS_CLI proceeds by sending a question with file size for storing the file on the server.
If the analyzed question is okay (available free space, server load time), the server sends a response with the file_key and receives the file. Otherwise, FS_CLI starts from point (1).
Then, FS_CLI creates FKEY, and the connection is closing.
Lastly, FKEY is ready to use.
2. Receiving File:
There are two ways to receive files- directly by FS_CLI or via HTTP by Nginx (ngx_http_fstorage_module). Both ways utilize the same decryption method of FKEY. To receive the file via HTTP by Nginx (ngx_http_fstorage_module), you need to create a URL. For example: [http://your.server/your/path?file_key=thefdakjfdsbasjk235423]; however, you can use the time-access-key (AKEY) if you want.
To receive the file via FS_CLI, first, FS_CLI connects to a particular backend/FS_SRV (from FKEY), then,
2. FS_SRV verifies if the FS_CLI's address (config variable 'allowed_ips') is trusted, and if the handshake SUCCESED, FS_CLI can then send a question to get the file with , FS_SRV analyzes the question(by checking if the file_key is correct and if the file exists). If the file_key is, then the server starts sending the file; otherwise, FS_CLI will receive an error code, and the connection will close.
Lastly, FS_CLI receives the file, and the connection is closing.
Installation is quite simple. Here is a step-by-step guide:
1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute
Version 0.2: N/A