[KB7857] Opsæt en HTTPS/SSL-forbindelse til ESET PROTECT On-Prem (Linux)

BEMÆRK:

Denne side er blevet oversat af en computer. Klik på engelsk under Sprog på denne side for at få vist den originale tekst. Hvis du finder noget uklart, bedes du kontakte din lokale support.

Problem

Løsning

Relateret løsning: Windows-brugere

Brugere af Rocky Linux Virtual Appliance

Hvis du er bruger af Rocky Linux Virtual Appliance, skal du indstille portnummeret for connectoren til 443.

Læs mere om ESET Management Agent med certifikat fra Rocky Linux ESET PROTECT Virtual Appliance.

HTTPS

Af sikkerhedsmæssige årsager anbefaler vi, at du konfigurerer ESET PROTECT On-Prem til at bruge HTTPS.

Brug et eksisterende certifikat

Fejlmeddelelsen "Bruger ukrypteret forbindelse! Konfigurer venligst webserveren til at bruge HTTPS" kan vises, når du får adgang til ESET PROTECT On-Prem via HTTP. Dette sker efter installationen af ESET PROTECT On-Prem.

Trinene nedenfor vedrører certifikater til Apache Tomcat, som bruges til at sikre sikre HTTPS-forbindelser. Læs mere om ESET PROTECT On-Prem-certifikater.

  1. Flyt certifikatfilen (f.eks. certificate_file.pfx) til Apache Tomcat-installationsmappen (f.eks. /etc/tomcat/).

  2. Åbn filen Server.xml, der findes i Apache Tomcat-installationsmappen, og rediger filen som følger:

    • Apache Tomcat 9

      • Hvis der ikke er noget <‎Connector efter <‎Service name="Catalina">, skal du kopiere følgende streng og indsætte den efter <‎Service name="Catalina">.

        Brug dine egne værdier for keystoreFile, keystorePass og keystoreType:

        <Connector port="8443"
                       protocol="HTTP/1.1"
                       SSLEnabled="true"
                       maxThreads="150"
                       scheme="https"
                       secure="true"
                       clientAuth="false"
                       sslEnabledProtocols="TLSv1.2,TLSv1.3"
                       ciphers="TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,
                                TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
                                TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
                                TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384,
                                TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
                                TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
                                TLS_RSA_WITH_AES_128_CBC_SHA256,
                                TLS_RSA_WITH_AES_128_GCM_SHA256,
                                TLS_RSA_WITH_AES_128_CBC_SHA,
                                TLS_RSA_WITH_AES_256_CBC_SHA256,
                                TLS_RSA_WITH_AES_256_GCM_SHA384,
                                TLS_RSA_WITH_AES_256_CBC_SHA"
                       keystoreFile="/etc/tomcat/certificate_file.pfx"
                       keystorePass="Secret_Password_123"
                       keystoreType="PKCS12"
                       />
      • Hvis <‎Connector er angivet efter <‎Service name="Catalina">, skal du bruge dine egne værdier for de nedenstående parametre.

        • keystoreFile – Angiv den fulde sti til certifikatfilen (.pfx, .keystore eller andet). Hvis du bruger et ikke-JKS-certifikat (f.eks. en .pfx-fil ), skal du slette keyAlias (det findes som standard i Server.xml ) og tilføje den korrekte keystoreType.
        • keystorePass –Angiv adgangskoden til certifikatet.
        • keystoreType– Angiv certifikattypen.
    • Apache Tomcat 10

      Rediger <Connector -taget som følger:

      Brug dine egne værdier for de nedenfor anførte parametre.

      • certificateKeystoreFile – Angiv den fulde sti til certifikatfilen.
      • certificateKeystorePassword– Angiv adgangskoden til certifikatet.

      <Connector port="443"
                     protocol="org.apache.coyote.http11.Http11NioProtocol"
                     maxThreads="150"
                     SSLEnabled="true">
                     <SSLHostConfig>
                      <Certificate certificateKeystoreFile=""/etc/tomcat/certificate_file.pfx"
                          certificateKeystorePassword="admin.1234"
                           type="RSA"/>
                     </SSLHostConfig>
                  </Connector>
  3. Genstart Tomcat-tjenesten:

    sudo systemctl restart tomcat
    • Hvis du bruger en .keystore-fil, skal du bruge stien til filen (keystoreFile="/etc/tomcat/tomcat.keystore") og definere keyAlias (keyAlias="tomcat") i stedet for keystoreType.

    • Hvis du vil deaktivere HTTP:

      <!--
          <Connector port="8080" protocol="HTTP/1.1"
                     connectionTimeout="20000"
                     redirectPort="8443" />
      SELinux aktiveret

      Brugere, der har SELinux aktiveret og modtager en fejlmeddelelse om ugyldigt certifikat, skal muligvis køre kommandoen restorecon for at gendanne SELinux-sikkerhedskonteksten:

      restorecon /etc/tomcat/my_cert_file.pfx
      
      ls -lZ
      
      -rw-r--r--. root root unconfined_u:object_r:etc_t:s0   /etc/tomcat/my_cert_file.pfx

Opret et nyt certifikat, og få det signeret

Brug en sikker HTTPS/SSL-forbindelse til ESET PROTECT On-Prem.

  1. Opret en nøgleopbevaring med et SSL-certifikat. Du skal have Java installeret .

    Apache Tomcat kræver Java:
    • Kontroller, at Java, ESET PROTECT On-Prem og Apache Tomcat har samme bitness.

    • Hvis du har flere Java-versioner installeret på dit system, anbefaler vi, at du afinstallerer tidligere Java-versioner og kun beholder den nyeste Java.

    • Offentlige opdateringer til Oracle JAVA SE til forretnings-, kommerciel eller produktionsbrug kræver en kommerciel licens. Hvis du ikke køber en JAVA SE-licens, kan du bruge denne vejledning til at skifte til et gratis alternativ.

    Java indeholder værktøjet keytool, som giver dig mulighed for at oprette et certifikat via kommandolinjen.

    1. Du skal generere et nyt certifikat for hver Tomcat-instans (hvis du har flere Tomcat-instanser) for at sikre, at hvis ét certifikat kompromitteres, forbliver de andre Tomcat-instanser sikre. Nedenfor er et eksempel på en kommando til at oprette en nøgleopbevaring med et SSL-certifikat.

    2. Naviger til den nøjagtige placering af keytool -filen, for eksempel /usr/lib/jvm/”java version”/jre/bin (mappen afhænger af operativsystemet og Java-versionen), og kør kommandoen:

      sudo keytool -genkeypair -alias "tomcat" -keyalg RSA -keysize 4096 -validity 3650 -keystore "/etc/tomcat/tomcat.keystore" -storepass "ditadgangskode" -keypass "ditadgangskode" -dname "CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown"

      Filstien /etc/tomcat/tomcat.keystore er kun et eksempel; vælg din egen sikre og tilgængelige placering.

      Parametrene -storepass og -keypass

      Værdierne for -storepass og -keypass skal være ens.

  2. Eksporter certifikatet fra nøgleopbevaringsstedet. Nedenfor ses en eksempelkommando til eksport af certifikatanmodningen fra nøgleopbevaringsstedet:

    sudo keytool -certreq -alias tomcat -file "/etc/tomcat/tomcat.csr" -keystore "/etc/tomcat/tomcat.keystore" -ext san=dns:ESETPROTECT
    Erstat værdierne efter behov
    • Erstat værdien "/etc/tomcat/tomcat.csr" for parameteren -file med den faktiske sti og det faktiske filnavn, hvor certifikatet skal eksporteres til.

    • Erstat værdien ESETPROTECT for -ext- parameteren med det faktiske værtsnavn på den server, hvor din Apache Tomcat med ESET PROTECT On-Prem kører.

  3. Få SSL-certifikatet signeret hos den rodcertifikatmyndighed (CA), du foretrækker.

    Du kan fortsætte til trin 6, hvis du planlægger at importere en rod-CA senere. Hvis du vælger at fortsætte på denne måde, kan din webbrowser vise advarsler om et selvunderskrevet certifikat, og du bliver nødt til at tilføje en undtagelse for at oprette forbindelse til ESET PROTECT On-Prem via HTTPS.

  4. Importer rodcertifikatet og mellemlægscertifikatet fra din CA til din nøgleopbevaring. Disse certifikater stilles normalt til rådighed af den enhed, der har underskrevet dit certifikat. Det er nødvendigt, fordi certifikatsvaret valideres ved hjælp af pålidelige certifikater fra nøgleopbevaringen.

    sudo keytool -import -alias root -file "/etc/Tomcat/root.crt" -keystore "/etc/tomcat/tomcat.keystore"
    sudo keytool -import -alias intermediate -file "/etc/Tomcat/intermediate.crt.pem" -keystore "/etc/tomcat/tomcat.keystore"
  5. Når du modtager det signerede certifikat fra rod-CA'en, skal du importere CA'ens offentlige nøgle og certifikatet (tomcat.cer) til din nøgleopbevaring. Nedenfor ses et eksempel på en kommando, der importerer et signeret certifikat til nøgleopbevaringen:

    sudo keytool -import -alias tomcat -file "/etc/tomcat/tomcat.cer" -keystore "/etc/tomcat/tomcat.keystore"
    Erstat værdierne efter behov

    Erstat værdien /etc/tomcat/tomcat.csr for parameteren -file med den faktiske sti og filnavnet på det signerede certifikat.

    Hvis du vil bruge et eksisterende certifikat (f.eks. et virksomhedscertifikat), skal du følge disse instruktioner.

  6. Rediger konfigurationsfilen server.xml, så tagget <‎Connector skrives på samme måde som i eksemplet nedenfor:

    <Connector server="OtherWebServer" port="443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="/etc/tomcat/tomcat.keystore" keystorePass="yourpassword"/>

    Denne ændring deaktiverer også ikke-sikre Tomcat-funktioner, så kun HTTPS er aktiveret (parameterenscheme= ). Af sikkerhedsmæssige årsager kan det også være nødvendigt at redigere filen tomcat-users.xml for at slette alle Tomcat-brugere og ændre filen ServerInfo.properties for at skjule Tomcats identitet.

  7. Genstart Apache Tomcat-tjenesten. ESET PROTECT On-Prem bruger muligvis tjenestenavnet tomcat9.

    sudo systemctl restart tomcat
    Sikker forbindelse mislykkes stadig på Linux

    Vigtigt indhold kommer her.

    Følgende fejlmeddelelse kan muligvis vises i mappen /var/....../tomcat: "failed to initialize end point associated with ProtocolHandler ["http-bio-443"]."

    Hvis problemet fortsætter, skal du ændre porten i filen server.xml til en værdi højere end 1024, da porte under 1024 muligvis ikke er tilgængelige for brugere uden root-rettigheder. Hvis du af en eller anden grund er nødt til at bruge port 443, kan du stadig ændre værdien og derefter videresende porten.

    Følg nedenstående trin for at aktivere portomdirigering (f.eks. fra port 443 til port 8443):

    1. Tillad fjernadgang til webkonsollen:

      sudo iptables -A INPUT -p tcp -m tcp --dport 8443 -j ACCEPT

      Alternativt kan du åbne og redigere firewall-konfigurationsfilen (nano /etc/sysconfig/iptables) og tilføje denne linje til det afsnit, der starter med *nat og slutter med COMMIT:

      -A PREROUTING -p tcp -m tcp --dport 443 -j REDIRECT --to-ports |8443)
    2. Fjern port 8080 for at deaktivere HTTP:

      sudo iptables -D INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
    3. Gem firewall-reglerne:

      iptables-save > /etc/network/iptables.rules
    4. Deaktiver SELinux. Vejledningen kan variere afhængigt af din Linux-distribution.