Cancelled

Create SSL server for a linux box designed to handle connections similar to the service ''LogMeIn''

Hello all!

I have a pretty unique project. What I need is the creation of a program that will run in the background on a linux box. This will listen on port 443 (SSL) for incoming connections. Once connected to, it will maintain this connection (keepalive packets to make sure it's still up) and "idle". This program is acting as a server program so it should be accepting many connections at once from many different clients, each of them "idling" (the protocol for all of this is plaintext encrypted over SSL, and I have the entire protocol mapped out for you, so no worries).

Detailed information is down below in the "Detailed Information" section.

## Deliverables

Hello all!

I have a pretty unique project. What I need is the creation of a program that will run in the background on a linux box. This will listen on port 443 (SSL) for incoming connections. Once connected to, it will maintain this connection (keepalive packets to make sure it's still up) and "idle". This program is acting as a server program so it should be accepting many connections at once from many different clients, each of them "idling" (the protocol for all of this is plaintext encrypted over SSL, and I have the entire protocol mapped out for you, so no worries).

Once connected, all relevant information will be sent to the server program:

IP address, time of connection, "name" of connection, username, password

All of this information is sent once the program first connects, and should simply be stored in the local MySQL database.

The end user will then log into my web page, and the page's PHP scripts will access this database and show the user which one of his machines are connected to this server program. You do not need to worry about this part, I have that taken care of.

The ONLY thing that I need is the work for the server. A background process that will accept connections on port 443, will spawn a "daemon" to handle that connection specifically (like httpd does), and all information received will be pushed into a local MySQL database (and all information that needs to be sent will be put into the same local MySQL database..your program need only to loop and check this area, and when it's available, send it over the already-connected socket).

Ocasionally, the user will submit information to be transmitted to the client that is connected to the server, in which case your program simply passes it over the already connected socket. I plan on accomplishing this by simply having your program loop through a portion of the local MySQL database set up for that connection (in a table called "send" or something similar) and it will simply pass the information to the client, and all information received will simply be put into the "receive" table for that connection. All communication between my PHP scripts and your program will be done through the local MySQL connection.

ALL of the information you'll need (protocol information, where to put the info, database structure, etc) is already mapped out and will be provided to the bid winner.

The program will need to be able to handle quite a few simultaneous connections (in the neighborhood of a few thousand) as the client program will be distributed to customers.

I will provide server credentials and fully working programs to test your protocol code, connection code, and MySQL communication code.

Skills: Amazon Web Services, Anything Goes, Linux, MySQL, PHP, Software Architecture, Software Testing, Web Hosting, Website Management, Website Testing

See more: what is on a background check, what is in a background check, what is a background check, what does a background check show, my web create, designed box, create a test plan, care connection, where to work at 15, what is a test case, socket server c, show box, handle, create similar access, create my web page, check for connection, php server client socket, socket ssl linux, client socket server, linux programs, server case, socket php ssl, linux ssl socket, linux server information, linux mysql create

About the Employer:
( 24 reviews ) United States

Project ID: #3729156