Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Uppgradering av Jetty

...

Hämta hem och packa upp senaste jetty

Code Block
wget https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.3.24.v20180605/jetty-distribution-9.3.24.v20180605.tar.gz
cd /opt/
sudo tar xvf ~/jetty-distribution-9.3.24.v20180605.tar.gz

Stoppa jetty (exempel nedan är för debian/ubuntu)

Code Block
sudo /etc/init.d/jetty stop

Kopiera över jetty-base (där allt intressant finns) till den nya installationen och länka om jetty

Code Block
sudo cp -r jetty/jetty-base/ jetty-distribution-9.3.24.v20180605/
sudo chown -R jetty:jetty jetty-distribution-9.3.24.v20180605/
sudo rm jetty
sudo ln -s jetty-distribution-9.3.24.v20180605/ jetty

idp-installer scriptet hackade /opt/jetty/bin/jetty.sh, jag valde att istället lägga till dessa variabler i /etc/default/jetty för att de skall följa med mellan uppgraderingarna.

La till följande i /etc/default/jetty

Code Block
JETTY_HOME=/opt/jetty
JETTY_BASE=/opt/jetty/jetty-base

Starta upp jetty igen (exempel nedan är för debian/ubuntu)

11 till Jetty 12 (major versionsbyte)


Shibboleth Identity Provider och SWAMID rekommenderar användning av Jetty (https://shibboleth.atlassian.net/wiki/spaces/IDP5/pages/3199500577/Installation#Non-Windows-Installation) med Shibboleth Identity Provider version 5.

Förberedelser

Officiella instruktioner finns på https://shibboleth.atlassian.net/wiki/spaces/IDP5/pages/3516104706/Jetty12 

Instruktioner

Ladda ned och packa upp Jetty under /opt

Klona java-idp-jetty-base enligt instruktioner https://shibboleth.atlassian.net/wiki/spaces/IDP5/pages/3516104706/Jetty12#Getting-Started. Kopiera jetty-base från repo:t till /opt/jetty-base-12

Gå igenom sidan https://shibboleth.atlassian.net/wiki/spaces/IDP5/pages/3516104706/Jetty12 samt varje mapp under jetty-base-12 för att se till att korrekt konfiguration migreras från befintlig /opt/jetty-base till den nya /opt/jetty-base-12 

Glöm inte credentials filer och deras konfiguration, error.war, innehåll av static mappen, filer i start.d och webapps.

Backchannel är inte längre supporterade eller fungerar med Jetty 12. Om ni fortfarande kör med backchannel port (8443), måste man stänga av detta i Jetty och ta bort certifikatet. Glöm inte att uppdatera metadata för att ta bort backchannel certifikatet. 

Se till att följa punkterna under Jetty logging för att ladda ned rätt logback jar-filer.

Verifiera att TLS Ciphers är up-to-date. Ett förslag till tls-ciphers.xml finns nedan. Det är rekommenderat att testa med hjälp av ett verktyg, tex. https://www.ssllabs.com/ssltest 

Code Block
languagexml
titletls-ciphers
collapsetrue
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_10_0.dtd">

<Configure>
  <Ref refid="sslContextFactory">
    <Call name="addExcludeProtocols">
      <Arg>
        <Array type="String">
          <Item>TLSv1.0</Item>
          <Item>TLSv1.1</Item>
        </Array>
      </Arg>
    </Call>
    <Set name="ExcludeCipherSuites">
      <Array type="String">
        <Item>^TLS_RSA_.*$</Item>
        <Item>^.*_RSA_.*_(MD5|SHA|SHA1)$</Item>
        <Item>^.*_DHE_RSA_.*$</Item>
        <Item>SSL_RSA_WITH_DES_CBC_SHA</Item>
        <Item>SSL_DHE_RSA_WITH_DES_CBC_SHA</Item>
        <Item>SSL_DHE_DSS_WITH_DES_CBC_SHA</Item>
        <Item>SSL_RSA_EXPORT_WITH_RC4_40_MD5</Item>
        <Item>SSL_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
        <Item>SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA</Item>
        <Item>SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA</Item>
        <Item>TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA</Item>
        <Item>TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA</Item>
	<Item>TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384</Item>
	<Item>TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256</Item>
      </Array>
    </Set>
  </Ref>
</Configure>

Kopiera loggfiler som man vill behålla från den gamla till den nya.

Installation

Stoppa jetty. 

Flytta under befintlig jetty-base till jetty-base-11

Radera /opt/jetty symbolic länk och ersätta den med en ny som pekar mot nya jetty-home-12.X.X

Flytta jetty-base-12 till jetty-base

Kontrollera att filer allt under jetty-home-12.X.X och jetty-base ägs av rätt systemkonto och grupp (tex. jetty)

Starta Jetty och kontrollera loggar under /opt/jetty-base/logs/jetty.log. Om det ser bra ut och efter Jetty har startats korrekt, kontrollera Shibboleths loggar i /opt/shibboleth-idp/logs/idp-process.log

Testa inloggning.

...