Grupo n.33 Pedro Pais, n.º 41375 Pedro Candido, n.º15674 Antonio Rodrigues n.º40853
Run client:
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient -init myrep
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -push myrep
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -push myrep/1.txt
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -pull myrep
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -pull myrep/1.txt
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -share myrep pedro
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -remove myrep pedro
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient pedro 10.101.148.173:4567 -p ant
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -share myrep pedro
java -Djava.security.manager -Djava.security.policy=client.policy -cp bin client.MyGitClient antonio 10.101.148.173:4567 -p ant -share myrep pedro
java -Djava.security.manager -Djava.security.policy=server.policy -cp bin server.MyGitServer 4567
0) Ligação TLS/SSL 1) Gerar par de chaves do servidor
keytool -genkeypair -keysize 2048 -keyalg RSA -keystore .myGitServerKeyStore -alias myGitServer
2) Gerar par de chaves dos utilizadores [NÃO FOI UTILIZADO]
keytool -genkeypair -keysize 2048 -keyalg RSA -keystore .antonioKeyStore -alias antonio keytool -genkeypair -keysize 2048 -keyalg RSA -keystore .pedroKeyStore -alias pedro
3) criar truststores dos clientes [] //export do certificado a partir da keystore do servidor // este cetificado tem a chave publica do servidor. keytool -exportcert -alias myGitServer -file myGitServer.cer -keystore .myGitServerKeyStore
//import do certificado para a truststore do cliente // neste caso iriamos importar para keystore de cada cliente o certificado (Chave publica do servidor). // isto fará com que o cliente possa assinar assinar coisas (com a chave publica do servidor) que só este poderia decifrar // visto que so com a chave privada e que as poderia decifrar. keytool -importcert -alias myGitServer -keystore .antonioTrustStore -file myGitServer.cer keytool -importcert -alias myGitServer -keystore .pedroTrustStore -file myGitServer.cer
4) criar truststore do servidor //export do certificado a partir da keystore do cliente keytool -exportcert -alias antonio -file antonio.cer -keystore .antonioKeyStore keytool -exportcert -alias pedro -file pedro.cer -keystore .pedroKeyStore
//import dos certificados para a truststore do servidor keytool -importcert -alias antonio -keystore .myGitServerTrustStore -file antonio.cer keytool -importcert -alias pedro -keystore .myGitServerTrustStore -file pedro.cer