Le Guide
See where JIRA will be installed and the settings that will be used. Installation Directory: /opt/atlassian/jira Home Directory: /var/atlassian/application-data/jira HTTP Port: 8081 RMI Port: 8005 Install as service: Yes
La procédure officielle de Atlassian Running JIRA over SSL or HTTPS ne prends pas en compte qu'on a déjà un certificat, par exemple un wildcard.
Ayant la clé publique host.crt et la clé privée host.key, on peut créer un Keystore avec ces étapes:
# openssl pkcs12 -export -in host.crt -inkey host.key > host.p12# keytool -importkeystore -srckeystore host.p12 -destkeystore host.jks -srcstoretype pkcs12<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName jira.yourdomain.com
ServerAlias www.jira.yourdomain.com
RewriteEngine On
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [R]
</VirtualHost>
<VirtualHost *:443>
ServerAdmin webmaster@localhost
ServerName jira.yourdomain.com
ServerAlias www.jira.yourdomain.com
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/yourdomain.com.pem
SSLCertificateKeyFile /etc/apache2/ssl/yourdomain.com.key
SSLCertificateChainFile /etc/cert/STAR_yourdomain_com.ca-bundle
SSLProxyEngine on
ProxyPass / https://localhost:8443/
ProxyPassReverse / https://localhost:8443/
ProxyPreserveHost On
#DocumentRoot /home/www/
ErrorLog /var/log/apache2/jira.yourdomain.com-error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/jira.yourdomain.com-access.log combined
ServerSignature On
</VirtualHost>
À partir d'Apache version 2.4+, il faut ajouter ceci dans le fichier .conf du site:
SSLProxyEngine on SSLProxyVerify none SSLProxyCheckPeerCN off SSLProxyCheckPeerName off SSLProxyCheckPeerExpire off
Pour migrer JIRA sur un autre serveur, voici la procédure :
mysqldump --opt -u [user] -p[pass] jiradb > ~/jiradb.sql
/var/atlassian/application-data/jira/export./opt/atlassian/jira/bin/stop-jira.sh
/var/atlassian/application-data/jira.cd /var/atlassian/application-data/jira tar -czf ~/jira-home.tar.gz ./*
cd /opt/atlassian/jira tar -czf ~/jira-install.tar.gz ./*
/Applications/JIRA et décompresser le fichier contenant l'application JIRA./Applications/JIRA/HOME et y mettre les données du fichier compressé du créé à l'étape 1c.Sur le serveur cible
mkdir -p /opt/atlassian/jira cd /opt/atlassian/jira tar xzf jira-install.tar.gz .
mkdir -p /var/atlassian/application-data/jira cd /var/atlassian/application-data/jira tar xzf jira-home.tar.gz .
mysql -h localhost -u [user] -p[password] mysql> CREATE DATABASE jiradb CHARACTER SET utf8 COLLATE utf8_bin;
dbconfig.xml (ce fichier ce trouve dans le répertoire racine du JIRA_HOME):mysql> CREATE USER jirauser IDENTIFIED BY 'password'; mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTER,INDEX on jiradb.* TO 'jirauser'@'localhost' IDENTIFIED BY 'password'; mysql> FLUSH PRIVILEGES;
mysql-connector-java-5.1.24-bin.jar) dans /opt/atlassian/jira/lib s'il n'existe pas./var/atlassian/application-data/jira/import et récupérer ce backup dans JIRA (Administration → System)
La mise à jour s'est bien effectuée, sauf pour le HTTPS. En modifiant le server.xml pour décommenter le connector 8443, ça n'a pas fonctionné, JIRA n'écoutait pas sur le port 8443. J'ai voulu utiliser config.sh, mais j'ai dû upgrader Java de 1.7 à 1.8 1) pour démarrer le config.sh.
J'ai spécifié le Keystore Path et Key alias dans la configuration et en redémarrant JIRA, le port 8443 est écouté.
Version de JIRA : System → Troubleshooting and Support → System Info
| Date | Version antérieure | Version installée | Type d'opération |
|---|---|---|---|
| 20130715 | 5.2.11 | 6.0.4 | Mise à jour, + achat nouvelle licence |
| 20130424 | 5.1.8 | 5.2.11 | Mise à jour |