private:zakaznici:hpl:atlassian
Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
| Obě strany předchozí revizePředchozí verze | |||
| private:zakaznici:hpl:atlassian [2025/10/22 10:57] – [Certifikáty] snemec | private:zakaznici:hpl:atlassian [2025/10/22 11:07] (aktuální) – [Certifikáty] snemec | ||
|---|---|---|---|
| Řádek 1: | Řádek 1: | ||
| + | ====== Konfigurace aplikací ====== | ||
| + | |||
| + | ===== Aplikace ===== | ||
| + | |||
| + | Jira: https:// | ||
| + | confluence: https:// | ||
| + | bitbucket: https:// | ||
| + | bamboo: https:// | ||
| + | |||
| + | **Pozn:** Na reverzním proxy jsou uvedeny chybně adresy pro confluence a bitbucket, proto nejsou servery dostupné z inetu. | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | Po výpadku a opětovném nahození app. serverů nezafungoval reverzní proxy na Apache. \\ | ||
| + | Fungovalo jen přesměrování na firewallu a veškerý provoz končil na jira.hpl.cz. | ||
| + | |||
| + | Bylo nutné znovu načíst iptables a restartovat apache(nejsem si jistý pořadím). | ||
| + | |||
| + | ===== Apache - obecná konfigurace pro všechny app. servery ===== | ||
| + | |||
| + | apt-get install apache2 | ||
| + | apt-get install libapache2-mod-jk | ||
| + | |||
| + | a2enmod proxy | ||
| + | a2enmod proxy_http | ||
| + | a2enmod proxy_ajp | ||
| + | a2enmod rewrite | ||
| + | a2enmod deflate | ||
| + | a2enmod headers | ||
| + | a2enmod proxy_balancer | ||
| + | a2enmod proxy_connect | ||
| + | a2enmod proxy_html | ||
| + | a2enmod proxy_ajp | ||
| + | a2enmod rewrite | ||
| + | a2enmod mod_jk | ||
| + | a2enmod mod_jk | ||
| + | a2enmod ssl | ||
| + | | ||
| + | ===== Konfigurační soubor server.xml ===== | ||
| + | |||
| + | S vyjímkou **Bitbucket** je uložen v podsložce **conf** v **HOME** složce | ||
| + | |||
| + | / | ||
| + | | ||
| + | server.xml | ||
| + | |||
| + | | ||
| + | <code xml server.xml> | ||
| + | < | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | |||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | /> | ||
| + | </ | ||
| + | |||
| + | ====== Upgrade ====== | ||
| + | |||
| + | https:// | ||
| + | https:// | ||
| + | ===== Jira upgrade z verze 7.1 na 7.3.5 ===== | ||
| + | |||
| + | Po upgrade Jira z verze 7.1 na 7.3.5 nebylo funkční připojení k web serveru přes https. | ||
| + | Porovnáním s funkčním serverem nebylo aktivní spojení na portu 8009. | ||
| + | |||
| + | V rámci upgrade nebyly přeneseny násladující soubory: | ||
| + | |||
| + | '' | ||
| + | a | ||
| + | '' | ||
| + | |||
| + | Při použití původního souboru '' | ||
| + | Po postupné editaci(pokus - omyl) '' | ||
| + | |||
| + | Soubor '' | ||
| + | |||
| + | ===== Jira upgrade z verze 7.3.6 na 7.4.0 ===== | ||
| + | |||
| + | * Vypnutí serveru Jira a vytvoření zfs clone\\ '' | ||
| + | * Stažení aktuální(požadované) verze Jira\\ '' | ||
| + | '' | ||
| + | * Záloha složky conf - ''/ | ||
| + | * Změna oprávnění\\ '' | ||
| + | * Upgrade\\ '' | ||
| + | * Po provedení upgrade Jira nakopírujte zpět soubor '' | ||
| + | * Spustit Jira příkazem ''/ | ||
| + | * Otestovat funkčnost | ||
| + | * Po odsouhlasení Jardy provést '' | ||
| + | |||
| + | ===== Jira upgrade z verze 7.4.0 na 7.6.0 - obecný postup ===== | ||
| + | |||
| + | Postup je stejný jako u předešlého upgrade. | ||
| + | Poslední upgrade byl proveden z verze **7.3.6** na **7.4.0** a pak po dvo verzích az na **7.12.0** | ||
| + | |||
| + | |||
| + | ===== Bamboo ===== | ||
| + | |||
| + | Postup: https:// | ||
| + | Umístění důležitých složek a souborů: https:// | ||
| + | |||
| + | | ||
| + | Upgrade z verze: 5.11.1.1 \\ | ||
| + | |||
| + | |||
| + | ''< | ||
| + | ''< | ||
| + | |||
| + | Upgrade byl testován na kopii produkčního stroje\\ | ||
| + | |||
| + | '' | ||
| + | |||
| + | Kopie zařízení BAMBOO01 byla přimountována(pomocí příkazu kpartx). Následně změněna statická IP adresa(soubor interfaces)\\ | ||
| + | |||
| + | '' | ||
| + | '' | ||
| + | '' | ||
| + | '' | ||
| + | |||
| + | |||
| + | ===== Certifikáty LE pro novou doménu ===== | ||
| + | |||
| + | < | ||
| + | |||
| + | / | ||
| + | |||
| + | / | ||
| + | |||
| + | / | ||
| + | |||
| + | / | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Obnova certifikátů ==== | ||
| + | |||
| + | <code bash> | ||
| + | |||
| + | / | ||
| + | |||
| + | / | ||
| + | |||
| + | </ | ||
| + | |||
| + | ==== Skript pro obnovu a synchronizaci certifikátů ==== | ||
| + | |||
| + | <code bash> | ||
| + | |||
| + | #! /bin/sh | ||
| + | |||
| + | / | ||
| + | rsync -avz -e "ssh -i / | ||
| + | / | ||
| + | ssh snemec@mail.hpl.cz 'sudo / | ||
| + | |||
| + | </ | ||
| + | |||
| + | ====== Virtuální servery ====== | ||
| + | |||
| + | |||
| + | ===== Certifikáty ===== | ||
| + | |||
| + | Popis fungování ověření na základě certifikátů od LE.\\ | ||
| + | |||
| + | Certifikáty se používají pro konfiguraci přístupu k web rozhraní serverů přes protokol https. \\ | ||
| + | Dále se používají k získání vztahu důvěry mezi jednotlivými servery. Hlavně mezi Bitbucket a JIRA.\\ | ||
| + | Kde JIRA je ověřovatel.\\ | ||
| + | S webovým rozhranním nebyl problém, ale docházelo k problémům s ověřením mezi servery, konkrétně mez Bitbucket a JIRA.\\ | ||
| + | Problém byl když došlo k vydání certifikátů jinou mezilehlou (intermediate) certifikační autoritou(LE R10 - R13), pro konkrétní servery.\\ | ||
| + | Pak docházelo k nesouladu mezi servery, protože např. pro Bitbucket vyl cert. vydán R11, ale pro JIRA byl vydán R13. To nemá vliv na https přístup, ale mělo to vliv na komunikaci mezi servery, protože CA certifikát pro konkrétní CA(R10 - R13) se ukládá do JAVA truststoru.\\ | ||
| + | Po konzultaci s AI(Provozuji starší java aplikaci, do které musím ručně registrovat CA klíč. Rotace mezi R10 - R13 mi způsobuje problémy. Lze to řešit např. jedním CA souborem, který bude obsahovat všechny CA klíče?) jsem um9stil do JAVA truststoru ISRG Root X1 certifikát. Tomuto certifikátu by měly důvěřovat všechny mezilehlé (intermediate) certifikační autority(LE R10 - R13). Cert. jsem umístil **20.10.2025** | ||
| + | |||
| + | ===== Jira ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | **Restart serveru**\\ | ||
| + | |||
| + | / | ||
| + | | ||
| + | Test, že Jira poslochá na odpovídajících portech\\ | ||
| + | |||
| + | netstat -anp|grep java|more | ||
| + | | ||
| + | < | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 32 0 192.168.10.58: | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | tcp6 32 0 192.168.10.58: | ||
| + | tcp6 | ||
| + | tcp6 | ||
| + | |||
| + | </ | ||
| + | | ||
| + | |||
| + | Vystavení certifikátu od cert. autority Let's Encrypt pomocí skriptu acme.sh | ||
| + | https:// | ||
| + | |||
| + | Při vydávání certifikátu je použitý mód **web root**. Na straně web serveru musí být na portu 80 dostupný adresář | ||
| + | Původně byl Jira server dostupný jen na portu 443. V konfiguraci apache byl nastaven redirect z portu 80 na port 443\\ | ||
| + | Veškeré dotazy na portu 80 jsou přesměrovány na port 443, kromě '' | ||
| + | |||
| + | |||
| + | <code apache 000-default.conf> | ||
| + | Alias / | ||
| + | < | ||
| + | AllowOverride None | ||
| + | Require all granted | ||
| + | Satisfy Any | ||
| + | </ | ||
| + | < | ||
| + | | ||
| + | | ||
| + | | ||
| + | | ||
| + | # | ||
| + | # | ||
| + | |||
| + | # | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <file apache default-ssl.conf> | ||
| + | IfModule mod_ssl.c> | ||
| + | < | ||
| + | #<Proxy *> | ||
| + | # Order deny,allow | ||
| + | # Allow from all | ||
| + | #</ | ||
| + | ErrorLog ${APACHE_LOG_DIR}/ | ||
| + | LogLevel warn | ||
| + | CustomLog ${APACHE_LOG_DIR}/ | ||
| + | SSLEngine on | ||
| + | SSLProxyEngine on | ||
| + | ProxyPreserveHost on | ||
| + | ProxyPass / ajp:// | ||
| + | ProxyPassReverse / ajp:// | ||
| + | SSLProxyCheckPeerCN off | ||
| + | SSLCertificateFile | ||
| + | SSLCertificateKeyFile / | ||
| + | SSLCACertificateFile / | ||
| + | # | ||
| + | # | ||
| + | # | ||
| + | SSLProtocol +SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2 | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== Jira - konfigurace reverzního proxy ==== | ||
| + | |||
| + | <code apache 000-default.conf> | ||
| + | < | ||
| + | ServerName jira.hpl.cz | ||
| + | ServerAlias jira.griffteam.com jira.griffteam.cz | ||
| + | ProxyPreserveHost On | ||
| + | ProxyRequests off | ||
| + | ProxyPass / http:// | ||
| + | ProxyPassReverse / http:// | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <code apache default-ssl.conf> | ||
| + | < | ||
| + | < | ||
| + | ServerName jira.hpl.cz | ||
| + | ErrorLog ${APACHE_LOG_DIR}/ | ||
| + | LogLevel warn | ||
| + | CustomLog ${APACHE_LOG_DIR}/ | ||
| + | SSLEngine on | ||
| + | SSLProxyEngine on | ||
| + | ProxyPreserveHost on | ||
| + | ProxyPass / https:// | ||
| + | ProxyPassReverse / https:// | ||
| + | SSLProxyCheckPeerCN off | ||
| + | SSLCertificateFile | ||
| + | SSLCACertificateFile / | ||
| + | SSLCertificateKeyFile / | ||
| + | SSLProtocol +SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2 | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | ==== Jira - ověření na základě LE certifikátů ==== | ||
| + | |||
| + | 09.07.2024 - problém s přihlášenímm na Confluence a Bitbucket(Bamboo je trvale vypnutý).\\ | ||
| + | Problém se podařilo vyřešit obnovením uložiště na Jira - viz popis níže a registrací ca.cer na Bitbucket a Confluence.\\ | ||
| + | **Na Confluence a Bitbucket musí být importován stejný ca.cer jako na Jira(konkrétně R11)** | ||
| + | |||
| + | {{: | ||
| + | |||
| + | Po změně root LE Certifikátů přestalo fungovat přihlášení k Bitbucket, Confluence i Bambo.\\ | ||
| + | Bylo potřeba znovu nahrát nový CA root certifikát na všechny servery. | ||
| + | |||
| + | Po instalaci certifikátů od Let's Encrypt byl sever dostupný přes webové rozhranní, ale přestal komunikovat s ostatními servery(bamboo, | ||
| + | |||
| + | Na serveru Jira bylo nutné vložit certifikát cert. autority do souboru cacerts. | ||
| + | |||
| + | Při manipulaci s certifikáty je nutné zadat heslo k uložišti, pro cacerts i jks uložiště je použité defaultní heslo '' | ||
| + | |||
| + | ==== Import root certifikátu cert autority do uložiště cacerts ==== | ||
| + | |||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | Pokud již existuje alias existuje alias '' | ||
| + | |||
| + | Je potřeba ho smazat a provést import znovu. | ||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | |||
| + | ==== Import pfx certifikátu do jks uložiště ==== | ||
| + | |||
| + | |||
| + | Dále je potřeba vytvořit pxf soubor a naimportovat ho do JKS uložiště. | ||
| + | |||
| + | === Vytvoření pfx souboru === | ||
| + | |||
| + | Ve složce kde se generují nové certifikáty - ''/ | ||
| + | Do této složky jsem nakopíroval soubory: | ||
| + | < | ||
| + | -rw-r--r-- 1 root root 1586 Dec 7 00:05 ca.cer | ||
| + | -rw-r--r-- 1 root root 1939 Dec 7 00:05 jira.hpl.cz.cer | ||
| + | -rw-r--r-- 1 root root 1675 Jan 11 2017 jira.hpl.cz.key | ||
| + | </ | ||
| + | |||
| + | |||
| + | Pro vygenerovaný pfx soubor je potřeba zadat heslo pro export - je jedno jaké heslo se použije. Slouží jen pro import od uložiště.\\ | ||
| + | |||
| + | < | ||
| + | cd / | ||
| + | openssl pkcs12 -export -out jiraletscert.pfx -inkey jira.hpl.cz.key -in jira.hpl.cz.cer -certfile ca.cer | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | === Import pfx do jks uložiště === | ||
| + | |||
| + | Při importu do jks uložiště je potřeba zadat '' | ||
| + | Dále je potřeba zadat '' | ||
| + | |||
| + | < | ||
| + | cd / | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | === Import certifikátu cert autority do jks uložiště === | ||
| + | |||
| + | < | ||
| + | cd / | ||
| + | / | ||
| + | cp -a jira.jks / | ||
| + | </ | ||
| + | Ověření - výpis uložených certifikátů v jks uložišti.\\ | ||
| + | < | ||
| + | / | ||
| + | Enter keystore password: | ||
| + | </ | ||
| + | |||
| + | Výpis by pak měl vypadat následovně: | ||
| + | |||
| + | < | ||
| + | Keystore type: JKS | ||
| + | Keystore provider: SUN | ||
| + | |||
| + | Your keystore contains 2 entries | ||
| + | |||
| + | rootca, Jan 14, 2017, trustedCertEntry, | ||
| + | Certificate fingerprint (SHA1): E6: | ||
| + | 1, Jan 14, 2017, PrivateKeyEntry, | ||
| + | Certificate fingerprint (SHA1): 81: | ||
| + | |||
| + | </ | ||
| + | |||
| + | Ve výpisu by měla být jedna položka '' | ||
| + | Oba výpisy musí mít stejné datum.\\ | ||
| + | |||
| + | Na ostatních serverech(Bamboo, | ||
| + | < | ||
| + | #Bitbucket | ||
| + | / | ||
| + | / | ||
| + | #Confluence | ||
| + | / | ||
| + | / | ||
| + | </ | ||
| + | Po vložení certifikátů restartovat aplikace.\\ | ||
| + | |||
| + | Na **Bamboo** jsou je **jks** uložiště certifikátů v jiné cestě.\\ | ||
| + | |||
| + | < | ||
| + | / | ||
| + | </ | ||
| + | |||
| + | **Ověření dostupnosti lze provést pomocí skriptu SSLPoke**\\ | ||
| + | |||
| + | **Důležité je provést kontrolu připojení z Bitbucket na Jira!** | ||
| + | |||
| + | https:// | ||
| + | https:// | ||
| + | Stahnout zip, rozbalit, SSLPoke.class nahrat do bin(/ | ||
| + | |||
| + | < | ||
| + | bitbucket:/ | ||
| + | Successfully connected | ||
| + | |||
| + | root@jira:/ | ||
| + | Successfully connected | ||
| + | </ | ||
| + | |||
| + | Dostupnost(Application Links) lze kontrolovat jak lokálně na Jira serveru, tak mezi servery.\\ | ||
| + | |||
| + | ===== Confluence ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | root@confluence: | ||
| + | Usage: / | ||
| + | |||
| + | |||
| + | ===== Bitbucket ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | **Home složka:** / | ||
| + | | ||
| + | **Konfigurační soubor:** ''/ | ||
| + | |||
| + | **Spouštěcí skripty:** | ||
| + | < | ||
| + | bitbucket: | ||
| + | Usage: / | ||
| + | </ | ||
| + | |||
| + | ===== Bamboo ===== | ||
| + | |||
| + | https:// | ||
| + | |||
| + | **Home složka:** ''/ | ||
| + | |||
| + | **Konfigurační soubor:** ''/ | ||
| + | | ||
| + | | ||
| + | **Spouštěcí skripty:** | ||
| + | **Pozor** app Bamboo se nenastartuje po restartu serveru. Je potřeba jí spustit ručně. | ||
| + | |||
| + | cd / | ||
| + | |||
| + | ./ | ||
| + | |||
| + | |||
| + | List trusted cert. auth\\ | ||
| + | |||
| + | / | ||
| + | |||
private/zakaznici/hpl/atlassian.txt · Poslední úprava: autor: snemec
