What version of JAVA is supported for bamboo version 6.10.4
Asked by Yusuf Kolabhai:

We recently upgrade our java from

java-1.8.0-openjdk-devel-1.8.0.262.b10-0.el7_8.x86_64

to

java-1.8.0-openjdk-devel-1.8.0.282.b08-1.el7_9.x86_64

and Bamboo wont come up using https

we reverted the java version and bamboo came up successfully

Please advise


Answers:
author: Pramodh M
body: As per documentation, it should have worked without any errors.

But please check with Atlassian Team to know more on this by raising a support ticket.

<https://confluence.atlassian.com/bamboo0610/supported-platforms-980468664.html>

Thanks,  
Pramodh

comments: author: Yusuf Kolabhai
body: Thanks Pramodh


author: Yusuf Kolabhai
body: bellow is what I see in my log file

09-Feb-2021 08:43:50.244 INFO \[http-nio-8083-exec-1\] org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header  
Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.  
java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens  
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:430)  
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:684)  
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)  
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:808)  
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498)  
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)  
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)  
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)  
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)  
at java.lang.Thread.run(Thread.java:748)  
09-Feb-2021 08:43:50.244 INFO \[http-nio-8083-exec-2\] org.apache.coyote.http11.Http11Processor.service Error parsing HTTP request header  
Note: further occurrences of HTTP header parsing errors will be logged at DEBUG level.  
java.lang.IllegalArgumentException: Invalid character found in method name. HTTP method names must be tokens  
at org.apache.coyote.http11.Http11InputBuffer.parseRequestLine(Http11InputBuffer.java:430)  
at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:684)  
at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66)  
at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:808)  
at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1498)  
at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)  
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)  
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)  
at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)  
at java.lang.Thread.run(Thread.java:748)


author: Yusuf Kolabhai
body: connector in the server.xml looks like this

\<Connector port="8446"  
protocol="org.apache.coyote.http11.Http11NioProtocol"  
maxHttpHeaderSize="8192"  
SSLEnabled="true"  
keystoreFile="/opt/atlassian/application-data/XXXXXXXXXXXX" keystorePass="XXXXXXXXXX"  
maxThreads="200" enableLookups="false"  
disableUploadTimeout="true" acceptCount="100"  
scheme="https" secure="true"  
clientAuth="false" sslProtocol="TLS"  
URIEncoding="UTF-8"  
compression="force"  
compressableMimeType="text/html,text/xml,text/plain,text/javascript,text/css"  
useBodyEncodingForURI="true" /\>


author: Pramodh M
body: We may have to change the protocol and maxHttpHeaderSize when it's in

"java-1.8.0-openjdk-devel-1.8.0.282.b08-1.el7_9.x86_64" version


author: Yusuf Kolabhai
body: do you have any suggestions ?


author: Pramodh M
body: It's better to get support from Atlassian Team on this configuration.


author: Yusuf Kolabhai
body: Response from Atlassian Team

Miguel Alonso commented:

Hi Yusuf,

Thanks for contacting us!

It looks like you're running into an existing bug, which can be found here:

* [BAM-21157 - bouncycastle throw NPE after upgrade to java 8 u272. linux agent fails to connect or UI won't load with ERR_SSL_PROTOCOL_ERROR](https://secure-web.cisco.com/1uR8LwgojPd73Ld-7S20mSXn1T_ZJcAY7Mny7upD3iTghE1ys-XSQAWoeeiTcgpk8afVDI0QDnyYm-OP28_1nxr-b2dY693zFEAnQSp6yw5C8P6xUaQOc8394cWn3WxMAJMA30ArR6gwEQD25vRvNXjXzNYbTUEoQL4fwUVN18A9HdWNzBCOVqYC4qrOS3y7QRrBiYtj35xIc2LHDRjCX_bMLrBLNgwpZsnJ471ZKQUJyHbsdznMHNcMBqt1lt__I9Oi5250vD7caRgkpfGoC57nHUSKDaagOhQmkPE8FPx8WEKvcCt8TlBlfV6HFtOQb/https%3A%2F%2Fjira.atlassian.com%2Fbrowse%2FBAM-21157) (fixed in Bamboo version 7.2.0)

There are two workarounds available in the bug report. One is to downgrade the JDK version which is what you already did or if you prefer to stick with version 282 you'll have to carry some additional steps which I quote below:

###### Option 2 {#toc-hId-129735899}

Disable RSASSA-PSS:  
Edit the $JAVA_HOME/jre/lib/security/java.security and add RSASSA-PSS to the jdk.tls.disabledAlgorithms or create another file containing:

jdk.tls.disabledAlgorithms=SSLv3, RC4, DES, MD5withRSA, DH keySize \< 1024, \\EC keySize \< 224, 3DES_EDE_CBC, anon, NULL, RSASSA-PSS

and add this to the $BAMBOO_INSTALL/bin/setenv.sh, in JVM_SUPPORT_RECOMMENDED_ARGS:

-Djava.security.properties=/path/to/file/created.above

This alone will fix the connection between agents and the server via the JMS broker.

If you are experiencing SSL error with HTTPS requests directly to Tomcat, **in addition to disabling RSASSA-PSS above**, you'll also need to disable TLSv1.3 by setting sslEnabledProtocols="TLSv1.2". Example:

\<Connector port="8443" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" disableUploadTimeout="true" acceptCount="100" enableLookups="false" maxHttpHeaderSize="8192" useBodyEncodingForURI="true" URIEncoding="UTF-8" keystoreFile="/path/to/keystore.p12" keystorePass="changeit" scheme="https" secure="true" SSLEnabled="true" sslProtocol="TLS" sslEnabledProtocols="TLSv1.2" clientAuth="false" /\>

Please let me know if you have any further questions!

Best regards,

Miguel  
Atlassian Support