Academic project - Web hosting virtual server

Budget $30 - $250 USD
Bids 7
Average Bid $157
Status Closed

Assignment :

fredhosting. com – IT services hosting


You have been commissioned to setup an IT services hosting service. Internet entrepreneur Fred Norris wants to offer everyone free computer access and website hosting. Users sign up online and get an account on a Linux server accessible via secure shell (ssh) and secure ftp (sftp) access. They will also have web space on an Apache webserver and one MySQL database account with the same user name as their account name. Users' web space will be in $HOME/public_html and will be accessible using the following urls: http://fredhosting. com/~username/

http://username.fredhosting. com


You, as the developer need to setup a server, install and configure appropriate software and write dynamic configuration scripts that together provide services to the following specification.

Server to be built on a virtual machine running Ubuntu Server operating system

Users register to obtain the service using a web based form accessible at [url removed, login to view]

Users should get secure shell (ssh) access as well as sftp access to their accounts. Regular FTP access should be regarded as insecure but is permissible.

The users' URLs will be in the form, [url removed, login to view] and the user will also be able to access their webspace using [url removed, login to view]~username/

Users should be allowed to choose their own user name, which will also be the name of their subdomain and the name of their database. You may also wish to let them choose their own password or you may wish to allocate a random password.

You may also wish to request and record other information from the user, relevant to their sign up.

Root level processes should be invoked using script(s) -these could be run from a cron job owned by root.

Users should be given a MySQL database and a user name with privileges restricting them to their own database only.

The final act of creating accounts / sub domains / databases / hosts entries and so on could be handled by a cron job belonging to the root user and running periodically every minute.

Normally new web hosts are registered in DNS “A” records. For the purpose of this assignment it is sufficient to add a suitable entry to /etc/hosts in order to be read by the web browser

Consider how your system could be implemented as a cloud based service. This does not need to be implemented but you should include a section of advisory notes on this topic in your documentation.

OPTIONAL (for additional marks): You may also wish to offer other features / facilities in your system. For example, changing of password, browser uploads or pre-installed software (for example phpMyAdmin, Wordpress, etc.)

OPTIONAL (for additional marks): Confirmation of account creation should be emailed to the new user. (Normally email confirmations would work to any sign-up address. Because of the constraints in the lab, all demonstration should take place on the local machine and therefore you will need test user accounts which can be signed up as OR as advised during practical sessions)

OPTIONAL (for bonus marks): Fred Wiggins has requested that it would be nice to have some mechanism on the sign-up page to determine that the applicant is actually a person - and not a bot.


What you submit should include, but need not be restricted to:

Documentation of how the system works and rationale for the methods used.

Design of system, (diagrams, pseudo-code or flowcharts)

Commented source code (preferably well commented.)

Demonstration / testing – the demonstration may not be restricted only to the tutor.

Get Free Quotes For A Project Like This

Looking to make some money?

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

Bids on this Project

  • bindmission Profile Picture


    cherthala,  India

    PROFILE : Am a Redhat certified Engineer ( Cert ID : 120-202-320 )working in a web hosting company in india . handling technical support in ticketing system of armia systems , my host and support-ages . SKILLS : Operating systems: Linux, Centos , Ubuntu Application/Web Servers: Apache, wordpress, magento, joomla Mail Servers: Postfix , Exim , Installation and Configuration Volume Management: LVM in Linux enterprise 6 FTP Servers: VSFTP Security: SSH, SSL, TCP Wrappers , Firewall Firewalls: IP tables Database: Mysql Control Panels: C panel DNS Providing administration and Live technical support to International web hosting clients via chat and ticketing. Also handling different levels of technical issues with server.

  • eddeboy Profile Picture


    Växjö,  Sweden

    I would be greatly pleased to join your project for the post of CSS Designer as I posses the required skills and experience in this arena. I have many years of experience working as a CSS Designer and I also have continual experience in HTML5 over the past few years. I have individual experience in working with PHP and can work under any work pressure or rigid deadlines. I look forward to being hired by you.

  • laotseu Profile Picture


    Lucens,  Switzerland

    Strong experience in building high-performing web solutions. My expertise covers a wide range of technologies and methods from the infrastructure to the application layer, deeply convinced by the DevOps & "move-fast" culture. Contributor to the Debian Project (, maintaining some packages, member of the Debian Perl Team. Specialties: GNU/Linux expertise (Debian & derivates, RHEL), kernel internals, Web security and performance, networking, fluent in Bash/Perl/PHP, basic understanding of Ruby/Python. Designing, automating & operating web environments.

  • rkhyd Profile Picture


    Hyderabad,  India

    All forum software installation / troubleshooting / recovery / restoration Super fast server migrations/transfers Setting up and configuration of new servers Procuring vps/dedicated servers at cheap prices Cost effective bulk mailing services LabView Automation/Troubleshooting

  • silsoftstudio Profile Picture


    Tychy,  Poland

    Hi I recently turned into Freelancing from working for somebody else .. I have +5 years of experience with PHP all kinds databases and Linux servers and other programming languages (java,.net,python). I currently work mostly in PHP/MySQL/MongoDb/Javascript to produce database driven web applications. I feel most comfortable with small to medium jobs that can be delivered in up to 30 days. I don't do corporate stuff anymore.... Give me a try ! Cheers

  • ielkfarna Profile Picture


    Gaza-Beithanoun,  Palestinian Territory

    Linux Servers-Security,Bitcoin-Altcoin, Litecoin, HTML/HTML5 Ajax JQuery, PHP, Java, ASP.NET C#. Oracle, SQL Server. Delphi 7/2010