[KB7857] Ρύθμιση σύνδεσης HTTPS/SSL για το ESET PROTECT On-Prem (Linux)

ΣΗΜΕΙΩΣΗ:

Αυτή η σελίδα έχει μεταφραστεί από υπολογιστή. Κάντε κλικ στα Αγγλικά στην ενότητα Γλώσσες σε αυτή τη σελίδα για να εμφανίσετε το πρωτότυπο κείμενο. Εάν βρείτε κάτι που δεν είναι σαφές, παρακαλούμε επικοινωνήστε με την τοπική σας υποστήριξη.

Πρόβλημα

Λύση

Σχετική λύση: Χρήστες Windows

Χρήστες της εικονικής συσκευής Rocky Linux

Εάν είστε χρήστης του Rocky Linux Virtual Appliance, ρυθμίστε τον αριθμό θύρας του συνδετήρα στο 443.

Διαβάστε περισσότερα σχετικά με το ESET Management Agent με πιστοποιητικό από το Rocky Linux ESET PROTECT Virtual Appliance.

HTTPS

Για λόγους ασφαλείας, συνιστούμε να ρυθμίσετε το ESET PROTECT On-Prem ώστε να χρησιμοποιεί HTTPS.

Χρησιμοποιήστε ένα υπάρχον πιστοποιητικό

Το μήνυμα σφάλματος «Χρήση μη κρυπτογραφημένης σύνδεσης! Παρακαλούμε ρυθμίστε τον διακομιστή ιστού ώστε να χρησιμοποιεί HTTPS» ενδέχεται να εμφανιστεί κατά την πρόσβαση στο ESET PROTECT On-Prem μέσω HTTP. Αυτό συμβαίνει μετά την εγκατάσταση του ESET PROTECT On-Prem.

Τα παρακάτω βήματα αφορούν πιστοποιητικά για το Apache Tomcat, τα οποία χρησιμοποιούνται για τη διασφάλιση ασφαλών συνδέσεων HTTPS. Διαβάστε περισσότερα σχετικά με τα πιστοποιητικά του ESET PROTECT On-Prem.

  1. Μετακινήστε το αρχείο πιστοποιητικού (για παράδειγμα certificate_file.pfx) στον φάκελο εγκατάστασης του Apache Tomcat (για παράδειγμα /etc/tomcat/).

  2. Ανοίξτε το αρχείο Server.xml που βρίσκεται στον φάκελο εγκατάστασης του Apache Tomcat και επεξεργαστείτε το αρχείο ως εξής:

    • Apache Tomcat 9

      • Εάν δεν υπάρχει <‎Connector μετά το <‎Service name="Catalina">, αντιγράψτε την παρακάτω συμβολοσειρά και επικολλήστε την μετά το <‎Service name="Catalina">.

        Χρησιμοποιήστε τις δικές σας τιμές για τα keystoreFile, keystorePass και 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"
                       />
      • Εάν υπάρχει <‎Connector μετά το <‎Service name="Catalina">, χρησιμοποιήστε τις δικές σας τιμές για τις παραμέτρους που αναφέρονται παρακάτω.

        • keystoreFile – Καθορίστε την πλήρη διαδρομή προς το αρχείο πιστοποιητικού (.pfx, .keystore ή άλλο). Εάν χρησιμοποιείτε πιστοποιητικό που δεν είναι JKS (για παράδειγμα, ένα αρχείο .pfx ), διαγράψτε το keyAlias (υπάρχει στο Server.xml από προεπιλογή) και προσθέστε τον κατάλληλο keystoreType.
        • keystorePass –Καθορίστε τη φράση πρόσβασης του πιστοποιητικού.
        • keystoreType – Καθορίστε τον τύπο πιστοποιητικού.
    • Apache Tomcat 10

      Επεξεργαστείτε την ετικέτα <Connector ως εξής:

      Χρησιμοποιήστε τις δικές σας τιμές για τις παραμέτρους που αναφέρονται παρακάτω.

      • certificateKeystoreFileΚαθορίστε την πλήρη διαδρομή προς το αρχείο πιστοποιητικού.
      • certificateKeystorePassword – Καθορίστε τον κωδικό πρόσβασης του πιστοποιητικού.

      <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. Επανεκκινήστε την υπηρεσία Tomcat:

    sudo systemctl restart tomcat
    • Εάν χρησιμοποιείτε αρχείο .keystore, χρησιμοποιήστε τη διαδρομή προς το αρχείο (keystoreFile="/etc/tomcat/tomcat.keystore") και ορίστε το keyAlias (keyAlias="tomcat") αντί για το keystoreType.

    • Εάν θέλετε να απενεργοποιήσετε το HTTP:

      <!--
          <Connector port="8080" protocol="HTTP/1.1"
                     connectionTimeout="20000"
                     redirectPort="8443" />
      SELinux ενεργοποιημένο

      Οι χρήστες που έχουν ενεργοποιημένο το SELinux και λαμβάνουν ένδειξη μη έγκυρου πιστοποιητικού ενδέχεται να χρειαστεί να εκτελέσουν την εντολή restorecon για να επαναφέρουν το πλαίσιο ασφαλείας του SELinux:

      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

Δημιουργήστε ένα νέο πιστοποιητικό και υπογράψτε το

Χρησιμοποιήστε μια ασφαλή σύνδεση HTTPS/SSL για το ESET PROTECT On-Prem.

  1. Δημιουργήστε ένα αποθετήριο κλειδιών με πιστοποιητικό SSL. Πρέπει να έχετε εγκατεστημένο το Java .

    Το Apache Tomcat απαιτεί Java:
    • Βεβαιωθείτε ότι η Java, το ESET PROTECT On-Prem και το Apache Tomcat έχουν την ίδια αρχιτεκτονική bit.

    • Εάν έχετε εγκατεστημένες πολλές εκδόσεις Java στο σύστημά σας, σας συνιστούμε να απεγκαταστήσετε τις παλαιότερες εκδόσεις Java και να διατηρήσετε μόνο την πιο πρόσφατη έκδοση Java.

    • Οι δημόσιες ενημερώσεις του Oracle JAVA SE για επιχειρηματική, εμπορική ή παραγωγική χρήση απαιτούν εμπορική άδεια χρήσης. Εάν δεν αγοράσετε άδεια χρήσης JAVA SE, μπορείτε να χρησιμοποιήσετε αυτόν τον οδηγό για να μεταβείτε σε μια δωρεάν εναλλακτική λύση.

    Το Java περιλαμβάνει το εργαλείο keytool, το οποίο σας επιτρέπει να δημιουργήσετε ένα πιστοποιητικό μέσω της γραμμής εντολών.

    1. Πρέπει να δημιουργήσετε ένα νέο πιστοποιητικό για κάθε παρουσία του Tomcat (εάν διαθέτετε πολλές παρουσίες του Tomcat), ώστε να διασφαλίσετε ότι, σε περίπτωση παραβίασης ενός πιστοποιητικού, οι άλλες παρουσίες του Tomcat θα παραμείνουν ασφαλείς. Ακολουθεί ένα παράδειγμα εντολής για τη δημιουργία αποθήκης κλειδιών με πιστοποιητικό SSL.

    2. Μεταβείτε στην ακριβή θέση του αρχείου του keytool, για παράδειγμα /usr/lib/jvm/”java version”/jre/bin (ο κατάλογος εξαρτάται από το λειτουργικό σύστημα και την έκδοση της Java) και εκτελέστε την εντολή:

      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"

      Η διαδρομή του αρχείου /etc/tomcat/tomcat.keystore είναι απλώς ένα παράδειγμα· επιλέξτε τη δική σας ασφαλή και προσβάσιμη θέση αποθήκευσης.

      Παράμετροι -storepass και -keypass

      Οι τιμές για τις παραμέτρους -storepass και -keypass πρέπει να είναι ίδιες.

  2. Εξαγάγετε το πιστοποιητικό από το keystore. Ακολουθεί ένα παράδειγμα εντολής για την εξαγωγή του αιτήματος υπογραφής πιστοποιητικού από το keystore:

    sudo keytool -certreq -alias tomcat -file "/etc/tomcat/tomcat.csr" -keystore "/etc/tomcat/tomcat.keystore" -ext san=dns:ESETPROTECT
    Αντικαταστήστε τις τιμές κατάλληλα
    • Αντικαταστήστε την τιμή "/etc/tomcat/tomcat.csr" για την παράμετρο -file με την πραγματική διαδρομή και το όνομα αρχείου όπου θέλετε να εξαχθεί το πιστοποιητικό.

    • Αντικαταστήστε την τιμή ESETPROTECT για την παράμετρο -ext με το πραγματικό όνομα του διακομιστή στον οποίο εκτελείται το Apache Tomcat με το ESET PROTECT On-Prem.

  3. Αποκτήστε το πιστοποιητικό SSL υπογεγραμμένο από την Αρχή Πιστοποίησης Ρίζας (CA) της επιλογής σας.

    Μπορείτε να προχωρήσετε στο βήμα 6 εάν σκοπεύετε να εισαγάγετε μια ρίζα CA αργότερα. Εάν επιλέξετε να προχωρήσετε με αυτόν τον τρόπο, ο περιηγητής ιστού σας ενδέχεται να εμφανίσει προειδοποιήσεις σχετικά με ένα αυτο-υπογεγραμμένο πιστοποιητικό και θα χρειαστεί να προσθέσετε μια εξαίρεση για να συνδεθείτε στο ESET PROTECT On-Prem μέσω HTTPS.

  4. Εισαγάγετε το πιστοποιητικό ρίζας και το ενδιάμεσο πιστοποιητικό της Αρχής Πιστοποίησης (CA) σας στο αποθετήριο κλειδιών σας. Αυτά τα πιστοποιητικά διατίθενται συνήθως από τον φορέα που υπέγραψε το πιστοποιητικό σας. Αυτό είναι απαραίτητο, καθώς η απάντηση του πιστοποιητικού επικυρώνεται χρησιμοποιώντας αξιόπιστα πιστοποιητικά από το αποθετήριο κλειδιών.

    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. Όταν λάβετε το υπογεγραμμένο πιστοποιητικό από την ρίζα CA, εισαγάγετε το δημόσιο κλειδί της CA και το πιστοποιητικό (tomcat.cer) στο keystore σας. Ακολουθεί ένα παράδειγμα εντολής που εισάγει ένα υπογεγραμμένο πιστοποιητικό στο keystore:

    sudo keytool -import -alias tomcat -file "/etc/tomcat/tomcat.cer" -keystore "/etc/tomcat/tomcat.keystore"
    Αντικαταστήστε τις τιμές κατάλληλα

    Αντικαταστήστε την τιμή /etc/tomcat/tomcat.csr για την παράμετρο -file με την πραγματική διαδρομή και το όνομα αρχείου του υπογεγραμμένου πιστοποιητικού.

    Εάν θέλετε να χρησιμοποιήσετε ένα υπάρχον πιστοποιητικό (για παράδειγμα, ένα εταιρικό πιστοποιητικό), ακολουθήστε αυτές τις οδηγίες.

  6. Επεξεργαστείτε το αρχείο διαμόρφωσης server.xml έτσι ώστε η ετικέτα <‎Connector να γραφτεί όπως στο παρακάτω παράδειγμα:

    <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"/>

    Αυτή η τροποποίηση απενεργοποιεί επίσης τις μη ασφαλείς λειτουργίες του Tomcat, αφήνοντας ενεργοποιημένο μόνο το HTTPS (παράμετροςscheme= ). Για λόγους ασφαλείας, ίσως χρειαστεί επίσης να επεξεργαστείτε το αρχείο tomcat-users.xml για να διαγράψετε όλους τους χρήστες του Tomcat και να τροποποιήσετε το αρχείο ServerInfo.properties ώστε να αποκρύψετε την ταυτότητα του Tomcat.

  7. Επανεκκινήστε την υπηρεσία Apache Tomcat. Το ESET PROTECT On-Prem ενδέχεται να χρησιμοποιεί το όνομα υπηρεσίας tomcat9.

    sudo systemctl restart tomcat
    Η ασφαλής σύνδεση εξακολουθεί να αποτυγχάνει σε Linux

    Σημαντικό περιεχόμενο εδώ.

    Το ακόλουθο μήνυμα σφάλματος ενδέχεται να εμφανιστεί στον κατάλογο /var/....../tomcat: «failed to initialize end point associated with ProtocolHandler ["http-bio-443"]».

    Εάν το πρόβλημα παραμένει, αλλάξτε τη θύρα στο αρχείο server.xml σε τιμή μεγαλύτερη από 1024, καθώς οι θύρες κάτω από το 1024 ενδέχεται να μην είναι προσβάσιμες σε χρήστες που δεν έχουν δικαιώματα root. Εάν, για κάποιο λόγο, πρέπει να χρησιμοποιήσετε τη θύρα 443, μπορείτε να αλλάξετε την τιμή και στη συνέχεια να προωθήσετε τη θύρα.

    Ακολουθήστε τα παρακάτω βήματα για να ενεργοποιήσετε την ανακατεύθυνση θύρας (για παράδειγμα, από τη θύρα 443 στη θύρα 8443):

    1. Επιτρέψτε την απομακρυσμένη πρόσβαση στην Κονσόλα Ιστού:

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

      Εναλλακτικά, μπορείτε να ανοίξετε και να επεξεργαστείτε το αρχείο διαμόρφωσης του τείχους προστασίας (nano /etc/sysconfig/iptables) και να προσθέσετε αυτή τη γραμμή στην ενότητα που ξεκινά με *nat και τελειώνει με COMMIT:

      -A PREROUTING -p tcp -m tcp --dport 443 -j REDIRECT --to-ports |8443)
    2. Αφαιρέστε τη θύρα 8080 για να απενεργοποιήσετε το HTTP:

      sudo iptables -D INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
    3. Αποθηκεύστε τους κανόνες του τείχους προστασίας:

      iptables-save > /etc/network/iptables.rules
    4. Απενεργοποιήστε το SELinux. Οι οδηγίες που παρέχονται ενδέχεται να διαφέρουν ανάλογα με τη διανομή Linux που χρησιμοποιείτε.