SSLProtocol, TLS and Internet Explorer

2007-08-09 Thread Henderson,Nathan
We are having a problem with our Standalone tomcat Server SSL Connectors
and viewing servlets in Internet Explorer 7on Windows Vista.

With the original config in the server.xml and SSLProtocol set to SSL
It works fine on IE6, and IE7 on XP.  It does not work on IE7 on Windows
Vista.

When the protocol is set to TLS, it works in IE7 on Vista, but not IE6.

You can get around this by in IE7 turning off the Use TLS 1.0 option
on IE, or turning this option on in IE6.  We do not feel this workaround
is sufficient for our needs.

We want a way to not have to make these changes.  I seriously think it
has to do with the Java we are using because of what I have seen in the
Tomcat docs.

The encryption/decryption protocol to be used on this socket. It is not
recommended to change this value if you are using Sun's JVM. It is
reported that IBM's 1.4.1 implementation of the TLS protocol is not
compatible with some popular browsers. In this case, use the value SSL.

We are using IBM Java 1.5.0
java version 1.5.0
Java(TM) 2 Runtime Environment, Standard Edition (build
pxi32dev-20060511 (SR2))
IBM J9 VM (build 2.3, J2RE 1.5.0 IBM J9 2.3 Linux x86-32
j9vmxi3223-20060504 (JIT enabled)
J9VM - 20060501_06428_lHdSMR
JIT  - 20060428_1800_r8
GC   - 20060501_AA)
JCL  - 20060511a
And Tomcat 5.5.20
Here is the Server.xml for the connector

Connector address=XXX.XX.XXX.XX port=443
maxHttpHeaderSize=8192
   maxThreads=150 minSpareThreads=25
maxSpareThreads=75
   enableLookups=false disableUploadTimeout=true
   acceptCount=100 scheme=https secure=true
   clientAuth=false sslProtocol=SSL
   keystoreFile=/usr/local/bin/ice/sslcerts/.keystore
   keystorePass=changeme algorithm=IbmX509 /

Would we be able to fix this problem, by going Sun Java and redoing
keystores and certificates?  Would this allow the TLS Protocol to work
for all browsers?

Thanks in advance for the help!





Noobie Questions

2007-02-27 Thread Henderson,Nathan
I am a relative noobie when it comes to using the Tomcat software and
have a few questions.  I have been reading these threads for a few weeks
now and I know that a lot of the things discussed on here are out of my
league, but I just wanted to know what a few of you would do in my
situation.

OK we administer databases for higher education institutions, we also
set up and support all software for the databases.  This software
includes web access software.

We have 7 different clients, 14 databases(1 prod and 1 test for each
client), and 14 web sites for accessing information 1 for each live and
test. 1 Web Server running RHEL and tomcat 5.5.2 we also use 7 SSL
certs, on for each institution which has the live name in it, so test
will still be secure you just have to answer a prompt when visited or
install the cert.

It has been set up as the Tomcat standalone, the only way our software
vendor will support it.  And have set up each servlet as it's own
service in the server.xml.  Is this how you guys would have done it.
This is the only way we could apply different certs to the different
servlets.

This is probably everywhere on the net but, Is there a way to bounce
these services independently from the tomcat app itself?  Also is it
possible to script the deployment and reload proccess?  I can't seem to
figure that out.  


RE: Noobie Questions

2007-02-27 Thread Henderson,Nathan

-Original Message-
From: David Delbecq [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, February 27, 2007 10:29 AM
To: Tomcat Users List
Subject: Re: Noobie Questions

En l'instant précis du 27/02/07 15:25, Henderson,Nathan s'exprimait en ces 
termes:
 We have 7 different clients, 14 databases(1 prod and 1 test for each 
 client), and 14 web sites for accessing information 1 for each live 
 and test. 1 Web Server running RHEL and tomcat 5.5.2 we also use 7 SSL 
 certs, on for each institution which has the live name in it, so test 
 will still be secure you just have to answer a prompt when visited or 
 install the cert.
   
Are those client certificates? (identifying client based on a client 
certificate residing next to internet explorer or firefox) Or are those server 
certificate (allowing SSL encryption of transmission
+ authentification of server, but client authentification is still done
using a simple user + password method)?

  We use server certificates

Based on your answer, the interpretation of your main question is totally 
different :) I will go assuming you speak of server certificates as those are 
more frequently used than SSLClientAuth

So you say you have a different 'entry' in server.xml for each 'servlet'
?! Do you mean different Connector, different Hosts or different Contexts? (A 
connector can contain several host which in turn can contain several context 
(webapplications) which each have several servlet)

If what you need is to have
https://client1.company.com/client1/
https://client1-test.company.com/client1-test/
https://client2.company.com/client2/
https://client2-test.company.com/client2-test/
...

and have client1 and 2 present different certificates but have client1 and 
client1-test present same certificate, i would recommand.

connector 8080 (ssl=true) - host client1 - context client1
 - host client1-test - context 
client1-test connector 8081 (ssl=true) - host client2 - context client2
 - host client2-test - context 
client2-test

In short, 1 connector per certificate. Why not a single connector for 
everything? Because, in HTTPS you have to present server certificate to client 
before client sends you the http header containing the name of virtual host he 
tries to access. So you only have 2 possibilities to find out which certificate 
to send to client, either use the server IP of connection (in your case, all 
the same, so useless information), either use the port number (8080 is 
certificate 1, 8081 is certificate 2, etc)



Note, in another possible configuration:
https://client1.company.com/client1/
https://client1.company.com/client1-test/
https://client2.company.com/client2/
https://client2.company.com/client2-test/
connector 8080 (ssl=true) - host client1 - context client1
  - 
context client1-test connector 8081 (ssl=true) - host client2 - context 
client2
  - 
context client2-test

Not sure my information is helpfull, try to help you based on you informations 
:) Also, if you provide additionnal informations, try to use correct word (or 
provide us with you server.xml file to make discussion clear)

This is an entry from our server.xml for one of our connections there are 14 
just like this with different ip addresses for each entry and names of course, 
I set up IP aliases on the NIC card for this purpose.

 Service name=xxtest
Connector address=xxx.xx.xxx.xx port=80 redirectPort=443/

 !-- Define a SSL HTTP/1.1 Connector on port 443 --

Connector address=xxx.xx.xxx.xx port=443 maxHttpHeaderSize=8192
   maxThreads=150 minSpareThreads=25 maxSpareThreads=75
   enableLookups=false disableUploadTimeout=true
   acceptCount=100 scheme=https secure=true
   clientAuth=false sslProtocol=SSL
   keystoreFile=/usr/local/bin/ice/sslcerts/.xxwalive
   keystorePass=xx algorithm=IbmX509 /

Engine name=xxtest defaultHost=xxwatest.iceschools.org
  Realm className=org.apache.catalina.realm.UserDatabaseRealm
 resourceName=UserDatabase /

!-- This Host is the Virtual Host: xxwatest --
  Host name=xxwatest.myorg.org appBase=/usr/webadvisor/xxwatest
  Aliasxxx.xx.xxx.xx/Alias

  Valve className='org.apache.catalina.valves.AccessLogValve'
directory='/usr/webadvisor/xxwatest/logs'
prefix='xxwatest_access.'
suffix='.log'
pattern='common'/

 Logger className='org.apache.catalina.logger.FileLogger'
directory='/usr/webadvisor/xxwatest/logs'
prefix='xxwatest_catalina.'
suffix='.log'
timestamp='true'/

 Context path=/ debug=5 docBase=/usr/webadvisor/xxwatest 
privileged=true /

 Context path=/manager debug=5 
docBase=/usr/tomcat/apache-tomcat

Multiple services and not restarting

2007-02-07 Thread Henderson,Nathan
 I am running Tomcat 5.5.2 as a stand-alone server with 14 separate
 services.  This is done to run 14 different sites but share 7 ssl
 certs.  The problem I am having is when I run my script to bounce the
 tomcat server only the first 3 or 4 services get restarted.  Does
 anyone happen to have any explanation for this?
 
 Here is my script
 **
 ip=/usr/local/bin/ice
 tc_dir=/usr/tomcat/apache-tomcat-5.5.20/bin
 
 if [ $# -eq 1 ]
 then
tc_oper=$1
 else
 echo -e Enter start, stop, or bounce: \c
 read tc_oper
 fi
 
 case $tc_oper in
  start)
  $tc_dir/startup.sh
  ;;
  stop)
  $tc_dir/shutdown.sh
  ;;
  bounce)
  $tc_dir/shutdown.sh
  $tc_dir/startup.sh
  ;;
*)
  echo Invalid operation you must enter stop start or bounce:
 Exiting.
exit
;;
  esac
 **
 
 All of the services are exactly the same and here is a snapshot of one
 from the server.xml file
 **
   Service name=xx
 Connector address=xxx.xx.xxx.xx port=80 redirectPort=443/
 
  !-- Define a SSL HTTP/1.1 Connector on port 443 --
 
 Connector address=xxx.xx.xxx.xx port=443
 maxHttpHeaderSize=8192
maxThreads=150 minSpareThreads=25
 maxSpareThreads=75
enableLookups=false disableUploadTimeout=true
acceptCount=100 scheme=https secure=true
clientAuth=false sslProtocol=SSL
keystoreFile=/usr/local/bin/ice/sslcerts/.dewalive
keystorePass=tick17 algorithm=IbmX509 /
 
 Engine name=xx defaultHost=..xxx
   Realm className=org.apache.catalina.realm.UserDatabaseRealm
  resourceName=UserDatabase /
 
 !-- This Host is the Virtual Host:  --
   Host name=..xxx appBase=/usr/x/
   Aliasxxx.xx.xxx.xx/Alias
 
   Valve className='org.apache.catalina.valves.AccessLogValve'
 directory='/usr/x//logs'
 prefix='_access.'
 suffix='.log'
 pattern='common'/
 
  Logger className='org.apache.catalina.logger.FileLogger'
 directory='/usr/x//logs'
 prefix='_catalina.'
 suffix='.log'
 timestamp='true'/
 
  Context path=/ debug=5 docBase=/usr/x/
 privileged=true /
 
  Context path=/manager debug=5
 docBase=/usr/tomcat/apache-tomcat-5.5.20/server/webapps/manager
 privileged=tr
 ue /
 /Host
 
 /Engine
 
   /Service
 **