You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 18 Next »

Overview

Currently we are using node.js 0.4.9 and Openssl. You may need to download and install openssl.

Installation of Required Software 

  • Download the node.js 0.4.9 tar file, unpack it. Running a newer version?  Here is how to downgrade.
  • Navigate to the download folder to make and install node.
    • ./configure
    • make
    • sudo make install

Certificate Installation

These certificates are used to proxy to the test server using your credentials.

  1. Go to Firefox/Preferences/Advanced/Encryption/View Certificates and click on your certificate and click the Backup button. In the Save Dialog box, save your certificate as a pks12 (.p12) file in your server directory (neatest if you save it in a cert subdirectory).
  2. Using your terminal, CD to the cert subdirectory.
  3. Create a .pem file: openssl pkcs12 -nodes -in yourcert.p12 -out yourcert.pem
  4. Now remove the password from your .pem file this way: openssl rsa -in yourcert.pem -out yourcertNoPassword.pem
  5. From the Authorities tab in FF, export and save the "MIT Certification Authority..." certification to a file name mitCA.pem in /zend_framework/public/server/certs folder.
  6.  If using the older proxy only, {{put the correct paths to your certs in the proxy.js file (roughly lines 21-23 / see example below).}}Proxy.js example:
    var KEY = fs.readFileSync('./certs/yourcert.pem').toString();
    var CERT = fs.readFileSync('./certs/yourcertNoPassword.pem').toString();
    var CA = fs.readFileSync('./certs/mitCA.pem').toString();

Install Required Node Module Dependencies

  1. Navigate to /zend_framework/public/server/
  2. Execute npm (node package manager) which will read the package.json file and install the listed dependencies. 
    1. npm install

Configure auth.json

Old Method:

Create /zend_framework/public/server/auth.json with your username and password in the following format, substituting your actual credentials:

{
	"username": "jresig",
	"password": "jQuery2006"
}

New Method:

Edit /zend_framework/public/server/auth_yours.json and rename this file to auth_me.json or whatever you like:

{
	"what_do_I_do_with_this_file": "Rename this file to auth_me.json or whatever you like then reference it on the command line with the '-a' parameter",
	"keyFile": ".pem file containing your key",
	"certsFile": ".pem file containing your cert with password removed",
	"caFile": "certs/mitCA.pem"
}

Testing The Local Server

Old Method:

  1. Navigate to zend_framework/public/server
  2. Start the server via command ./bin/mitserv

New Method:

  1. Navigate to zend_framework/public/server
  2. Start the server via command node bin/mitserv.js -a auth_me.json

Possible Issues

  • Issue:
    • Proxy starting but never returning
  • Fix:
    • Make sure you're connecting using either the MIT N or MIT SECURE N wireless network
  • Issue: 
  • Fix: The Apache server needs to include the username
  • Issue:
    • Error: EBADF, Bad file descriptor './certs/hij1nx.pem'
  • Fix:
    • The certs are missing and/or misconfigured. See the section on installing certificates.
  • No labels