Configurazione dell'agente di rete privata

Creare una configurazione Private Network Agent che un'integrazione distribuita possa usare per connettersi a un'applicazione in una rete privata. Questa configurazione fornisce i dettagli di connettività per abilitare il port forwarding dall'integrazione distribuita alla porta remota e all'host dell'applicazione nella rete privata.

Sintesi dei dettagli principali

Nome o tipo di file
switchclient.json
Il file contiene segreti?
Vero
Posizione dei dati importati o estratti
/home/aceuser/ace-server/config/switch/switchclient.json
Numero massimo di configurazioni di agenti di rete privata consentite per runtime di integrazione
Uno

Il file switchclient.json

La configurazione di Private network agent richiede un file switchclient.json che specifichi i dettagli della connettività per l'inoltro delle porte. Il port forwarding consente le connessioni attraverso un tunnel SSH a una porta remota e a un host in una rete privata. In questo file, si fornisce una porta di ascolto locale da aprire per l'integrazione distribuita e la porta e l'host remoti a cui inoltrare i messaggi o le richieste.

È possibile specificare un solo switchclient.json file per ogni runtime di integrazione. Il file viene collocato nella directory /home/aceuser/ace-server/config/switch per il runtime.

È possibile creare il file switchclient.json quando si configura una connessione di rete privata, quando si configura un agente sicuro che gira sul computer App Connect agente sicuro che viene eseguito sul computer. È possibile utilizzare il file switchclient.json con i dettagli degli endpoint completati come modello di partenza. Per sapere come scaricare il switchclient.json file, consultare la sezione "Connessione a una rete privata tramite un server switch ".

Le seguenti istruzioni descrivono come costruire un file switchclient.json con i dettagli di connettività per il port forwarding.

  1. Prendete una copia del file switchclient.json scaricato. Il file completato contiene informazioni sull'endpoint che includono host, porta e dettagli del certificato per la connessione remota. Il file contiene anche informazioni sulla posizione del server dello switch e sui certificati, come mostrato nell'esempio seguente.
    {
      "id": "fbda61eb-0e17-4bd2-a61d-9d202c1b2303",
      "admin": "disabled",
      "callableFlows": "disabled",
      "endpoints": [
        {
          "name": "My DB2 endpoint descriptive name",       "hostname": "203.0.113.10",       "port": 30041,
          "useTLS": false,
          "certs": {
            "key": "",
            "cert": "",
            "ca": [
              ""
            ],
            "rejectUnauthorized": true
          }
        }
      ],
      "switch": {
        "url": "wss://default-switch-server-switch-abcdefgh1jg.apps.appc-c-vir-d1.vz8y.p1.abc.com:443",
        "certs": {
          "key": "-----BEGIN PRIVATE KEY-----\nxxx\n-----END PRIVATE KEY-----\n",
          "cert": "-----BEGIN CERTIFICATE-----\nyyy\n-----END CERTIFICATE-----\n",
          "ca": [
            "-----BEGIN CERTIFICATE-----\nzzz\n-----END CERTIFICATE-----\n"
          ],
          "rejectUnauthorized": true
        }
      },
      "displayName": "pnc-wed-14-jun-2023-07-25-14-gmt-553"
    }
    Nota: Le voci id e displayName sono omesse se si è scaricato il file switchclient.json per l'agente di rete privato predefinito denominato switchServerName-privatenetworkagent.
  2. Prendete nota dei valori di hostname e port nell'array endpoints di questo file.
  3. Modificare il file per rimuovere le voci id, admin e callableFlow e le righe dell'array endpoints . Il risultato finale è simile al seguente esempio.
    {
      "switch": {
        "url": "wss://default-switch-server-switch-abcdefgh1jg.apps.appc-c-vir-d1.vz8y.p1.abc.com:443",
        "certs": {
          "key": "-----BEGIN PRIVATE KEY-----\nxxx\n-----END PRIVATE KEY-----\n",
          "cert": "-----BEGIN CERTIFICATE-----\nyyy\n-----END CERTIFICATE-----\n",
          "ca": [
            "-----BEGIN CERTIFICATE-----\nzzz\n-----END CERTIFICATE-----\n"
          ],
          "rejectUnauthorized": true
        }
      },
      "displayName": "pnc-wed-14-jun-2023-07-25-14-gmt-553"
    }
    Attenzione: Se si mantengono gli endpoint nella configurazione, il nome dell'host e la porta non devono corrispondere a un endpoint configurato in un client sicuro on-premises collegato allo stesso server switch.
  4. Inserite le seguenti righe per una matrice listeners direttamente dopo la parentesi graffa di apertura.
      "listeners": [
        {
          "localPort": localPortNumber,
          "remoteHostname": "remoteHost",
          "remotePort": remotePortNumber,
          "useTLS": false,
          "certs": {
            "key": "",
            "cert": "",
            "ca": [
              ""
            ],
            "rejectUnauthorized": true,
            "requestCert": true
          }
        }
      ],
    • localPortNumber è un numero di porta locale a scelta, sul quale l'agente si mette in ascolto e attraverso il quale vengono inoltrate tutte le connessioni alla porta del server database remoto sulla rete privata. (Per evitare possibili conflitti tra le porte, utilizzare un numero di porta pari o superiore a 10000.)
    • remoteHost è il nome host o l'indirizzo IP copiato dal file iniziale switchclient.json . Le richieste vengono inoltrate a questo host.
    • remotePortNumber è il numero di porta copiato dal file iniziale switchclient.json . Le richieste vengono inoltrate a questa porta.
    • useTLS accetta un valore pari a true o false (per abilitare o disabilitare l' TLS ), ma può essere ignorato insieme certs all'oggetto. Non sono necessarie impostazioni di sicurezza aggiuntive tra l'agente ascoltatore e il runtime di integrazione.

    L'esempio seguente mostra un file completato per un singolo ascoltatore. Queste impostazioni indicano che le connessioni alla porta locale 10000 vengono inoltrate alla porta remota 30041, sulla quale è in ascolto l'host 203.0.113.10.

    {
      "listeners": [
        {
          "localPort": 10000,
          "remoteHostname": "203.0.113.10",
          "remotePort": 30041,
          "useTLS": false,
          "certs": {
            "key": "",
            "cert": "",
            "ca": [
              ""
            ],
            "rejectUnauthorized": true,
            "requestCert": true
          }
        }
      ],
      "switch": {
        "url": "wss://default-switch-server-switch-abcdefgh1jg.apps.appc-c-vir-d1.vz8y.p1.abc.com:443",
        "certs": {
          "key": "-----BEGIN PRIVATE KEY-----\nxxx\n-----END PRIVATE KEY-----\n",
          "cert": "-----BEGIN CERTIFICATE-----\nyyy\n-----END CERTIFICATE-----\n",
          "ca": [
            "-----BEGIN CERTIFICATE-----\nzzz\n-----END CERTIFICATE-----\n"
          ],
          "rejectUnauthorized": true
        }
      },
      "displayName": "pnc-wed-14-jun-2023-07-25-14-gmt-553"
    }
    È possibile aggiungere più oggetti ascoltatore se si desiderano più connessioni. L'esempio seguente mostra due definizioni di ascoltatori all'interno dell'array listeners .
      "listeners": [
        {
          "localPort": 10000,
          "remoteHostname": "203.0.113.10",
          "remotePort": 30041,
          "useTLS": false,
          "certs": {
            "key": "",
            "cert": "",
            "ca": [
              ""
            ],
            "rejectUnauthorized": true,
            "requestCert": true
          }
        },
        {
          "localPort": 10001,
          "remoteHostname": "203.0.113.0",
          "remotePort": 1234,
          "useTLS": false,
          "certs": {
            "key": "",
            "cert": "",
            "ca": [
              ""
            ],
            "rejectUnauthorized": true,
            "requestCert": true
          }
        }
      ],
  5. Salva e chiudi il file.

Per configurare l'integrazione in modo da utilizzare l'agente di rete privato, creare una configurazione Private network agent nella scheda Configurazioni della pagina Gestione. Per ulteriori informazioni, vedere Fornitura di credenziali e segreti nelle configurazioni.

È quindi possibile importare il file switchclient.json nell'editor dell'agente di rete privato o incollarne il contenuto.
Editor di testo dell'Agente di rete privata con contenuti incollati

Per diagnosticare eventuali problemi di connettività alla rete privata, espandere la voce "Connetti" Icona che rappresenta la categoria «Connetti» nel riquadro di navigazione, quindi fare clic su "Cambia server". Per ulteriori informazioni, consultare la sezione Risoluzione dei problemi relativi alla connettività della rete privata.