Closed

FTP Backup Project(repost)

This project received 2 bids from talented freelancers with an average bid price of $595 USD.

Get free quotes for a project like this
Employer working
Project Budget
$100 - $500 USD
Total Bids
2
Project Description

**FTP Backup Project**

There are three (3) components to the FTP Backup Project.

(1) The FTP server with mySQL DB

(2) The DB API

(3) The Client software (windows)

For more details see *Deliverables


## Deliverables

1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.


2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).


**FTP Backup Project**

There are three (3) components to the FTP Backup Project.

(1) The FTP server with mySQL DB

(2) The DB API

(3) The Client software (windows)

_(1) FTP Server_

The server needs to run on Linux Operating System.

The server needs to be able to measure, set and control the following parameters via a, account access and configuration database (mySQL) per individual account.

1. password type (permanent or x-time)
2. allow to change password switch
3. settable ip access rules
4. settable directory access
5. home directory path
6. administrator privilege settings
7. login message file path
8. max concurrent users
9. max users from IP
10. max upload speed
11. max download speed
12. idle time-out
13. session time-out
14. quota enable switch
15. current disk quota
16. maximum disk quota
17. automatic expiration of account
18. upload to download ratio min and max
19. API access control

<[url removed, login to view]> has already been suggested as a server

_(2) DB API_

An Application Programming Interface that will allow complete control over the database. Such an API will use https:// as a communication protocol.

The API will have functions to:

(1) Create/Delete user accounts

(2) Update User Accounts

(3) Query User accounts

(4) Perform security checks

(5) Administrative functions

PHP or PERL is preferred as language. Security is very important as this API allows direct control over the database.

_(3) Client Software_

Description:

This Windows client software will selectively compress, encrypt and send files to a remote FTP server. The purpose is to create a remote backup system capable of backing up:



· MS Outlook / Outlook Express

o Script will close MS Outlook/Outlook Express

o Duplicate the file in cache (cache size must be appropriately adjusted by client software prior to create the duplicate file)

o MS Outlook/Outlook Express can then be re-launched with a script, if it was previously open, while the client software processes the cached duplicate file for backup.

· ASR (System Recovery)

· Registry Settings

· Windows Explorer - My Favorites





In point form here are most of the MUST HAVE features

1. Self installed executable For windows 98/2000/XP/2003
2. Should have trial period
3. Will encrypt image with AES 128 encryption key that is generated by the software
4. Can schedule backup
5. Will be able to save/load encryption key to diskette
6. Automatic live update of client software
7. Keeps 3 latest versions of backup available online
8. Ability to display ads or messages on client (during trial period) using adserver such as phpadsnew
9. Efficient management of bandwidth (see notes .)
10. Recovery and restore of all backups (one button full recovery)
11. Different service levels for each backup type

Notes:

In order to conserve on bandwidth (the MAIN design issue) we should utilize rsync to send files to the remote server. FTP would merely be used to retrieve control files and to perform a restore since the rsync server would not be running on the client.

All data from the server should be passed to the client using control files contained in the users home directories. These files will contain information such as specific service level flagging of product type, server to client messages, advertising information to client, and rsync messages etc..

A typical scenario:

1. Client software open
2. Client software connects to remote FTP server and retrieves status control file.
3. Status control file contains account plan info, disk usage etc. and is responsible for all product access control.
4. Client prepares backup file by encryption and compression. Efficient backup file system format will need to be determined.
5. File is sent to FTP server via rsync protocol.
6. Status control file is refreshed and info displayed. Each refresh is an FTP Get command

What needs to be confirmed is as follows:

1. Is Rsync the best solution to conserve on bandwidth during remote file transfer?
2. Design criteria for high volume account activity
3. Exact structure of status files
4. Client software look and feel
5. Creating login info for rsync server
6. Create function list for DB API


* * *This broadcast message was sent to all bidders on Friday Apr 1, 2005 11:37:06 AM:



Revised and final project ready to start
* * *This broadcast message was sent to all bidders on Thursday May 19, 2005 4:50:24 PM:



I have re-extended my project bid deadline.

Thank you all.

## Platform

Linux/apache/php/mysql for server part



Windows 98/2000/XP/2003 for client part

Looking to make some money?

  • Set your budget and the timeframe
  • Outline your proposal
  • Get paid for your work

Hire Freelancers who also bid on this project

    • Forbes
    • The New York Times
    • Time
    • Wall Street Journal
    • Times Online