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/centos)
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
JETTY_USER=jetty |
Starta upp jetty igen (exempel nedan är för debian/ubuntu/centos)
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 | ||||||
---|---|---|---|---|---|---|
| ||||||
<?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.
...