Fred,
Thanks. I'm confident in the URLs --> the http version works
fine: so the machine is OK. And I can browse the server on the 8443
port (including the java AXIS wsdl. Plus it works ) I just wanted
some confidence that this cert whackiness is really what was going
on... I'll now send out the openssl stuff. I know this isn't an
openssl group, but you have to do something like this to use SSL with
AXIS-C, so if anyone can share what they're doing or critique what I'm
doing.
(The following is based upon the process described at:
http://www.churchillobjects.com/c/11201g.html)
<code>
#!/usr/bin/csh
rm -rf mkcerts
#set path = ( /usr/local/ssl/bin $path )
#set path = /usr/local/ssl/bin:$path
#setenv PATH = /usr/local/ssl/bin:$PATH
set path = ( /usr/local/ssl/bin $path )
#set path = /usr/local/ssl/bin:$path
echo $PATH
mkdir mkcerts
cd mkcerts
mkdir demoCA
cd demoCA
mkdir certs
mkdir crl
mkdir newcerts
mkdir private
touch index.txt
echo "01" > serial
cd ..
#generate the Certificate Authorities Key
openssl genrsa -out ca.key 1024
#generate create certificate with Key
openssl req -new -x509 -key ca.key -out demoCA/cacert.pem<<H_MK_CERT
US
COLORADO
AURORA
myorg
CertGroup
JASON MUSGRAVE
[EMAIL PROTECTED]
H_MK_CERT
#make client key
keytool -genkey -alias clientapp -keystore newcerts<<H_CLIENT_KEYSTORE
changeit
clientStuff
mysuborg
myorg
AURORA
COLORADO
US
yes
H_CLIENT_KEYSTORE
#make server key
keytool -genkey -alias serverapp -keystore newcerts<<H_SERVER_KEYSTORE
changeit
testmachine
mysuborg
myorg
AURORA
COLORADO
US
yes
H_SERVER_KEYSTORE
#Export the client key
keytool -keystore newcerts -certreq -alias clientapp -file
clientapp.crs<<H_EXPORT_CLIENT
changeit
H_EXPORT_CLIENT
#Export the server key
keytool -keystore newcerts -certreq -alias serverapp -file
serverapp.crs<<H_EXPORT_SERVER
changeit
H_EXPORT_SERVER
#sign the client key
openssl ca -in clientapp.crs -out clientapp.pem -keyfile ca.key<<H_SIGN_CLIENT
y
y
H_SIGN_CLIENT
#sign the server key
openssl ca -in serverapp.crs -out serverapp.pem -keyfile ca.key<<H_SIGN_SERVER
y
y
H_SIGN_SERVER
#Convert from PEM to DER
openssl x509 -in clientapp.pem -out clientapp.der -outform DER
openssl x509 -in serverapp.pem -out serverapp.der -outform DER
#import CA Cert & Keys into Keystores
keytool -keystore newcerts -alias systemca -import -file
demoCA/cacert.pem<<H_IM_1
changeit
yes
H_IM_1
#
keytool -keystore newcerts -alias clientapp -import -file clientapp.der<<H_IM_2
changeit
yes
H_IM_2
keytool -keystore newcerts -alias serverapp -import -file serverapp.der<<H_IM_3
changeit
yes
H_IM_3
</code>
Now I have a keystore with client/server certs in it. Then I copy the
newcerts keystore to the tomcat install (which hosts JAVA AXIS) and
use remove keytool to remove client cert from it.
Then I go back and copy cacert into the certs directory and hash it.
Since, I think this is how to make it a trusted cert.
<code>
cp cacert.pem certs
cd certs
ln -s cacert.pem `openssl x509 -noout -hash -in cacert.pem`.0
</code>
Any help would be appreciated,
Jason