Jira SSL

Jira Service Desk / Confluence

Create "friendly" CNAMEs in DNS to point to the Load Balancer URLs.

Request a Certificate using Amazon Certificate Manager

Create a certificate (for the URL you intend to use to access JSD) and note the ARN...

aws acm request-certificate --domain-name jsdtest.mydomain.co.uk --validation-method DNS

Add an HTTPS Listener to the Load Balancer

Login to Jira Service Desk/Confluence. In Settings - System, change the Base URL to match the "friendly" CNAME from above.

Login to the Jira Server via ssh. Switch user to 'root' and edit the server.xml file...

sudo su - root

cd /opt/atlassian/jira-servicedesk/current/conf # Jira Service Desk

cd /opt/atlassian/confluence/current/conf # Confluence

cp server.xml server.xmlO

vi server.xml

  • Change redirectPort="8443" to redirectPort="443"

  • Change scheme="http" to scheme="https"

  • Change proxyName to reflect your "friendly" CNAME

  • Change proxyPort="80" to proxyPort="443"

  • Remove the line: useBodyEncodingForURI="true"

  • Add the following line between the line </Context> and the line </Host> :

<Valve className="org.apache.catalina.valves.RemoteIpValve" remoteIpHeader="x-forwarded-for" protocolHeader="x-forwarded-proto" protocolHeaderHttpsValue="https" />

Edit the web.xml file...

cd /opt/atlassian/jira-servicedesk/current/atlassian-jira/WEB-INF # Jira Service Desk

cd /opt/atlassian/confluence/current/confluence/WEB-INF # Confluence

cp web.xml web.xmlO

  • Add the text below inside the <web-app> </web-app> section (pasted after the first > after version=)

<security-constraint>

<web-resource-collection>

<web-resource-name>Protected Context</web-resource-name>

<url-pattern>/*</url-pattern>

</web-resource-collection>

<!-- auth-constraint goes here if you require authentication -->

<user-data-constraint>

<transport-guarantee>CONFIDENTIAL</transport-guarantee>

</user-data-constraint>

</security-constraint>

Restart Jira...

service jira restart

Wait until Jira is fully started

service jira status

You should see a message about "Warmed cache"

Restart Confluence...

service confluence restart

Wait until Confluence is fully started

service confluence status