README, and an error in characters in the SRP comment

This commit is contained in:
Timothy Prepscius 2013-10-04 21:36:02 -04:00
parent 110cc20c64
commit 9ff690321b
2 changed files with 77 additions and 1 deletions

View File

@ -1,2 +1,79 @@
mailiverse mailiverse
========== ==========
This documents talks about installing mailiverse from an origin to a target.
------- Requirements on the origin build machine ---------
To install from and build mailiverse from the origin, the origin must
have "git", "ant", "rsync" and "oracle java" installed. (Other javas might work, but I have
not tested them.) Also, your hosts file must point to mail.target and target.
To install git:
sudo apt-get install git --yes
To install ant:
sudo apt-get install ant --yes
Clone the mailiverse:
git clone https://github.com/timprepscius/mailiverse.git
To install java:
cd mailiverse/install
sudo ./setup-java.remote
To make the hosts file point to the correct place:
sudo nano /etc/hosts
add the lines:
SOME-IP-ADDRESS mail.whateverthenameofyourdomainis
SOME-IP-ADDRESS whateverthenameofyourdomainis
This could also be done on a DNS server, if you control one..
After these steps have been taken you are ready to set up.
--------- Setting up -------------
First run:
./setup-1-dependencies
This will build enough stuff to generate keys for things.
It will will generate default keys, default passwords, etc.
You will at some point need to type in "password" a bunch of times, to export a particular
key so it can be used with nginx.
Then run:
./setup-2-install
This will install the mailiverse system onto the target.
This means it will create user directories, install software, etc.
Then run:
./setup-3-compile
This will compile all the sources, jar them up, war them up, etc.
Then run:
./setup-4-deploy
This will deploy mailiverse onto the target machine.
---------
Congratulations, if you have finished these, you should be able to put:
https://mail.targetmachine/
And it should work.

View File

@ -79,7 +79,6 @@ public class SRPServerSession
throw new IllegalStateException("setClientPublicKey_A() has not been called yet."); throw new IllegalStateException("setClientPublicKey_A() has not been called yet.");
} }
// S = (A · v^u)^b
fCommonValue_S = fPublicKey_A.multiply(fVerifier.verifier_v.modPow(fSRP6_u, fConstants.largePrime_N)).modPow(fRandom_b, fConstants.largePrime_N); fCommonValue_S = fPublicKey_A.multiply(fVerifier.verifier_v.modPow(fSRP6_u, fConstants.largePrime_N)).modPow(fRandom_b, fConstants.largePrime_N);
fEvidenceValue_M1 = SRPUtils.calcM1(fPublicKey_A, fPublicKey_B, fCommonValue_S); fEvidenceValue_M1 = SRPUtils.calcM1(fPublicKey_A, fPublicKey_B, fCommonValue_S);