Show TOC

SSL für den SAP-Host-Agenten auf IBM i konfigurierenLocate this document in the navigation structure

Dieser Abschnitt beschreibt beispielhaft die SSL-Konfiguration für den SAP-Host-Agenten auf IMB i.

Voraussetzungen

Sie müssen als ein Benutzerprofil mit den speziellen Berechtigungen *SECADM und *ALLOBJ, beispielsweise als Benutzerprofil QSECOFR, angemeldet sein.

Kontext

In der folgenden Vorgehensweise gehen wir von der Annahme aus, dass Sie die Standardnamen für die Server-PSE verwenden. Wenn Sie den Standard-.pse-Namen überschreiben wollen, können Sie den folgenden Wert in der Profildatei des SAP-Host-Agenten (host_profile) verwenden:

ssl/server_pse= <Path to Server PSE>

Vorgehensweise

  1. Bereiten Sie die Personal Security Environment (PSE) für den Server vor:

    Die Server-PSE enthält die Namen und die öffentlichen Schlüssel der vertrauenswürdigen Zertifikate sowie das Serverzertifikat, das an den Client gesendet wird, wenn die SSL-Verbindung hergestellt ist. Vertrauenswürdige Zertifikate können Zertifikate, die von der Certification Authority (CA) ausgestellt werden, oder individuell vertrauenswürdige Zertifikate sein.

    1. Sie müssen vorübergehend die Anmeldung für den Benutzer SAPADM aktivieren. Um das Benutzerprofil zu ändern, geben Sie folgenden Befehl ein: CHGUSRPRF USRPRF(SAPADM) INLMNU(MAIN) LMTCPB(*NO)
    2. Legen Sie ein Verzeichnis /usr/sap/hostctrl/exe/sec mithilfe des folgenden Befehls an: CRTDIR DIR('/usr/sap/hostctrl/exe/sec') DTAAUT(*EXCLUDE) OBJAUT(*NONE)
      Hinweis

      Sie können auch ein anderes Verzeichnis verwenden, aber in diesem Falle müssen Sie angeben, wo sich die PSE-Datei befindet und dafür den Parameter ssl/server_pse wie oben beschrieben verwenden. In der folgenden Vorgehensweise verwenden wir der Einfachheit halber immer das Verzeichnis sec.

    3. Ändern Sie den Eigentümer und die primäre Gruppe des PSE-Verzeichnisses und definieren Sie die entsprechenden Berechtigungen mithilfe des folgenden Befehls:

      QSYS/CHGOWN OBJ('/usr/sap/hostctrl/exe/sec') NEWOWN(SAPADM)

      QSYS/CHGPGP OBJ('/usr/sap/hostctrl/exe/sec') NEWPGP(R3GROUP) DTAAUT(*RWX)

    4. Melden Sie sich nun als Benutzer SAPADM an und führen Sie den Befehl CALL PGM(QP2TERM) aus, bevor Sie die Befehle der folgenden Arbeitsschritte eingeben.
    5. Richten Sie den Suchpfad für die Shared Library (LIBPATH) und die SECUDIR-Umgebungsvariablen ein und wechseln Sie zum Verzeichnis exe des SAP-Host-Agenten.

      Die erforderlichen Befehle sind:

      export LIBPATH=/usr/sap/hostctrl/exe

      export SECUDIR=/usr/sap/hostctrl/exe/sec

      cd /usr/sap/hostctrl/exe

      Empfehlung

      Setzen Sie SECUDIR als absoluten Pfad, um Konflikte mit dem Werkzeug sapgenpse zu vermeiden.

    6. Legen Sie die Server-PSE und dort das Serverzertifikat sowie den Certificate Signing Request (CSR) mithilfe des folgenden Befehls an:

      . ./sapgenpse gen_pse -p SAPSSLS.pse -x <PASSWORD>-r <PKCS#10 requestfile> <DISTINGUISHED NAME>

      Dieser Befehl legt die PSE-Datei /usr/sap/hostctrl/exe/sec/SAPSSLS.pse (Name ist ein Festwert) an, die für die Authentifizierung des Hosts verwendet werden kann, der von <DISTINGUISHED NAME> für eingehende SSL-Verbindungen beschrieben wird. Der Zugriff auf die PSE-Datei wird mit dem Kennwort <PASSWORD> geschützt.

      Der CSR wird in die Stromdatendatei <PKCS#10 requestfile> geschrieben. Sie können die Warnung sapgenpse WARNING: Environment variable "USER" not defined! (sapgenpse-WARNUNG: Umgebungsvariable "USER" ist nicht definiert.) ignorieren.

      Beispiel

      ./sapgenpse gen_pse -p SAPSSLS.pse -x pass -r /tmp/myhost-csr.p10 "CN=myhost.wdf.sap.corp, O=SAP AG, C=DE"

      Dieser Befehl legt die PSE-Datei /usr/sap/hostctrl/exe/sec/SAPSSLS.pse an, die für die Authentifizierung von myhost.wdf.sap.corp für eingehende SSL-Verbindungen verwendet werden kann. Der Zugriff auf die PSE-Datei wird mit dem Kennwort pass geschützt. Der CSR wird in die Stromdatendatei /tmp/myhost-csr.p10 geschrieben.

    7. Gewähren Sie dem SAP-Host-Agenten Zugriff auf die Server-PSE mithilfe des folgenden Befehls:

      ./sapgenpse seclogin -p SAPSSLS.pse -x <PASSWORD>-O sapadm

      Beispiel

      ./sapgenpse seclogin -p SAPSSLS.pse -x pass -O sapadm

    8. Rufen Sie das Zertifikat auf die folgende Weise ab:
      1. Übertragen Sie die Datenstromdatei, die den CSR (Certificate Signing Request) enthält, zu einem Rechner und senden Sie sie an die von Ihnen verwendete Certification Authority (CA).

      2. Die CA antwortet auf die Anforderungsdatei PKCS#10 mit einer CA-response-file, die das signierte Zertifikat enthält - zwischen den Zeilen ---- BEGIN CERTIFICATE ---- und ---- END CERTIFICATE ----. Kopieren Sie den gesamten Inhalt zwischen diesen beiden Zeilen - einschließlich der Zeilen - in eine Textdatei. Übertragen Sie diese Textdatei in eine Datenstromdatei auf Ihrem IBM i.

        Beispiel

        Die Textdatei kann den Namen myhost.p7b haben und in die Stromdatendatei /tmp/myhost.p7b übertragen werden. Wir verwenden diesen Dateinamen in den folgenden Beispielen:

    9. Importieren Sie das signierte Zertifikat in die Server-PSE mithilfe des folgenden Befehls:

      ./sapgenpse import_own_cert -p SAPSSLS.pse -x <PASSWORD>-c <CA-response-file>

      Beispiel

      ./sapgenpse import_own_cert -p SAPSSLS.pse -x pass -c /tmp/myhost.p7b

    10. Prüfen Sie die Server-Zertifikatskette mithilfe des folgenden Befehls:

      ./sapgenpse get_my_name -p SAPSSLS.pse -x <PASSWORD>-v

      Beispiel

      ./sapgenpse get_my_name -p SAPSSLS.pse -x pass -v

    11. Sie setzen die Änderungen, die Sie in Schritt 1.a) vorgenommen haben, auf das Benutzerprofil SAPADM zurück, indem Sie das Programm QP2TERM mit der Funktionstaste F3 verlassen und den folgenden Befehl eingeben: CHGUSRPRF USRPRF(SAPADM) INLMNU(*SIGNOFF) LMTCPB(*YES)
    12. Melden Sie sich als ein Benutzerprofil mit den speziellen Berechtigungen *SECADM und *ALLOBJ an, beispielsweise als Benutzerprofil QSECOFR und führen Sie den Befehl CALL PGM(QP2TERM) aus, bevor Sie den folgenden Befehl eingeben, der den SAP-Host-Agenten erneut startet:

      /usr/sap/hostctrl/exe/saphostexec -restart

  2. Bereiten Sie die Personal Security Environment (PSE) für den Client vor:

    Die Client-PSE enthält die Namen und die öffentlichen Schlüssel der vertrauenswürdigen Zertifikate von der CA sowie das Client-Zertifikat, das an den SAP-Host-Agenten gesendet wird, wenn die SSL-Verbindung hergestellt ist.

    Die Konfigurationsschritte sind Client-spezifisch. Aus diesem Grund beschreiben wir sie auf generische Weise. Folgen Sie den Anweisungen in der entsprechenden Client-Dokumentation.

    Beispiele für mögliche Clients sind die SAP Management Console (SAP MC), der Diagnostics-Agent im SAP Solution Manager oder die Software des SAP NetWeaver Landscape Virtualization Management (LVM) (vormals Adaptive Computing Controller (ACC)).

Ergebnisse

Wenn Sie die oben stehende Vorgehensweise erfolgreich angewendet haben, ist der SAP-Host-Agent auch für den Port 1129 für die SSL-Kommunikation verwendbar.