[KB7857] Opsæt en HTTPS/SSL-forbindelse til ESET PROTECT On-Prem, der kører på 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

Er du en Rocky Linux Virtual Appliance (VA)-bruger?

Hvis du er Rocky Linux VA-bruger, skal du justere forbindelsens portnummer til 443. Se Installer ESET Management Agent med et certifikat fra Rocky Linux ESET PROTECT Virtual Appliance for at få flere oplysninger om Rocky Linux.

HTTPS

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

Brug et eksisterende certifikat

Nedenstående trin henviser til certifikater til Apache Tomcat, som bruges til at sikre sikre HTTPS-forbindelser. For information om ESET PROTECT On-Prem-certificeringer, se vores onlinehjælp.
  1. Flyt certifikatfilen (f.eks. certificate_file.pfx) til en Tomcat-konfigurationsmappe (f.eks. /etc/tomcat/).

  2. Åbn filen Server.xml, som ligger i /etc/tomcat/. Placeringen kan variere afhængigt af Linux-distributionen.
    • Hvis der ikke er nogen <Connector after <Service name="Catalina"> i Server. xml, skal du kopiere følgende streng ind i Server.xml. 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 til stede efter <Service name="Catalina"> i Server.xml, skal du erstatte værdierne for nedenstående parametre med dine værdier:

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 (den er som standard til stede i Server.xml ) og tilføje den korrekte keystoreType.

keystorePass - Angiv certifikatets adgangssætning.

keystoreType - Angiv certifikattypen.

  1. 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 et ugyldigt certifikatflag, 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 et keystore med et SSL-certifikat. Du skal have Java installeret.
    Apache Tomcat kræver Java:
    • Sørg for, at Java, ESET PROTECT On-Prem og Apache Tomcat har samme bitness (32-bit eller 64-bit).
    • Hvis du har flere Java-versioner installeret på dit system, anbefaler vi, at du afinstallerer ældre Java-versioner og kun beholder den nyeste Java.
    • Fra januar 2019 vil Oracle JAVA SE 8 offentlige opdateringer til forretnings-, kommerciel eller produktionsbrug kræve en kommerciel licens. Hvis du ikke køber et JAVA SE-abonnement, kan du bruge this guide til at gå over til et omkostningsfrit alternativ.

Java indeholder keytool, som gør det muligt at oprette et certifikat via kommandolinjen. Du skal oprette et nyt certifikat for hver Tomcat-instans (hvis du har flere Tomcat-instanser) for at sikre, at de andre Tomcat-instanser forbliver sikre, hvis et certifikat bliver kompromitteret.

Nedenfor er et eksempel på en kommando til at oprette et keystore med et SSL-certifikat:

Naviger til den nøjagtige placering af keytool-filen, for eksempel /usr/lib/jvm/"java version"/jre/bin (biblioteket afhænger af OS og Java-version), og kør kommandoen:

sudo keytool -genkeypair -alias "tomcat" -keyalg RSA -keysize 4096 -validity 3650 -keystore "/etc/tomcat/tomcat.keystore" -storepass "yourpassword" -keypass"yourpassword" -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 destination.
-storepass- og -keypass-parametre
Værdierne for -storepass og -keypass skal være de samme.
  1. Eksporter certifikatet fra keystore. Nedenfor er et eksempel på en kommando til at eksportere certifikatsignaturanmodningen fra keystore:
sudo keytool -certreq -alias tomcat -file "/etc/tomcat/tomcat.csr" -keystore "/etc/tomcat/tomcat.keystore" -ext san=dns:ESETPROTECT
Udskift værdier på passende vis
Erstat værdien "/etc/tomcat/tomcat.csr " for -file-parameteren med den faktiske sti og det faktiske filnavn, hvor du vil have certifikatet eksporteret.

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.
  1. Få SSL-certifikatet underskrevet med en Root Certificate Authority (CA) efter eget valg.

    Du kan gå videre til trin 6, hvis du planlægger at importere en Root CA senere. Hvis du vælger at fortsætte på denne måde, kan din webbrowser vise advarsler om et selvsigneret certifikat, og du bliver nødt til at tilføje en undtagelse for at oprette forbindelse til ESET PROTECT On-Prem via HTTPS.
  2. Importer rodcertifikatet og det mellemliggende certifikat fra din CA til dit keystore. 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 keystore.

    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"

  3. Når du modtager det signerede certifikat med rod-CA'en, skal du importere CA'ens offentlige nøgle ogcertifikatet (tomcat.cer) til din keystore. Nedenfor er et eksempel på en kommando, der importerer et signeret certifikat til keystore:
sudo keytool -import -alias tomcat -file "/etc/tomcat/tomcat.cer" -keystore "/etc/tomcat/tomcat.keystore"
Udskift værdier på passende vis
Erstat værdien "/etc/tomcat/tomcat.csr " for parameteren -file a med den faktiske sti og det faktiske filnavn, hvor det signerede certifikat er placeret.

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

  1. Rediger konfigurationsfilen server.xml, så tagget <Connector skrives 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(scheme=-parameter). Af sikkerhedsmæssige årsager kan det også være nødvendigt at redigere tomcat-users.xml for at slette alle Tomcat-brugere og ændre ServerInfo.properties for at skjule Tomcats identitet.

  1. Genstart Apache Tom cat-tjenesten. ESET PROTECT On-Prem kan bruge tjenestenavnet tomcat9.
sudo systemctl genstart tomcat

Hvad hvis en sikker forbindelse stadig fejler på Linux?
Fejlmeddelelse i /var/....../tomcat-biblioteket:
failed to initialize end point associated with ProtocolHandler ["http-bio-443"]Hvis problemet fortsætter, skal du ændre porten i server.xml-filen til en værdi, der er højere end 1024, fordi porte under 1024 muligvis ikke er tilgængelige for ikke-root-brugere. 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 afsnittet, 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. Instruktionerne gælder for Virtual Appliance, der kører CentOS7, og kan variere afhængigt af din Linux-distribution.