Définitions
NPA Publisher Explicit Proxy Configuration: Permet à l'éditeur NPA d'établir des connexions avec des services dépendants par le biais d'un proxy explicite, à l'exclusion des applications privées.
Introduction
L'éditeur est l'un des principaux composants de Netskope Private Access. Contrairement aux autres composants NPA, tels que Gateway, Stitcher et les services de gestion qui résident dans le nuage privé de Netskope, NPA Publisher réside dans le réseau du client où il peut accéder aux services privés des clients.
Sans une configuration de proxy explicite, le pare-feu de votre réseau doit permettre au NPA Publisher d'établir une connexion directe avec les services dépendants, tels que les services de gestion et d'assemblage du NPA pour le fonctionnement du NPA, ainsi que le service de paquetage du système d'exploitation et d'image de conteneur pour les opérations liées à la mise à niveau.
Lorsque votre réseau est en configuration proxy explicite, l'administrateur de l'éditeur peut configurer les paramètres du proxy. Lorsque les paramètres du proxy sont activés, le NPA Publisher établira des connexions aux services dépendants à travers le proxy.
Background
Une pratique courante consiste à définir des règles de pare-feu pour le réseau afin de bloquer tout le trafic sortant pour des raisons de sécurité. Dans ce cas, le proxy explicite est généralement la mesure par défaut pour se connecter aux services réseau externes.
Sous Linux, une pratique courante pour les paramètres du proxy consiste à utiliser la variable d'environnement HTTPS_PROXY pour spécifier le serveur proxy et le port, et NO_PROXY pour une liste de domaines ou d'adresses où le proxy doit être contourné. Le fichier /etc/environment est un endroit commun pour les variables d'environnement HTTPS_PROXY et NO_PROXY.
Lorsqu'une destination est spécifiée dans la liste de contournement, cela signifie que les connexions vers la destination sont établies directement. Il applique généralement des règles de pare-feu spécifiques pour autoriser le trafic vers les destinations.
Version éditeur R122
Starting with version R122, upgrades are no longer needed and the Proxy configuration will be available to all users in Beta. Please ensure your Publisher is upgraded before proceeding.
Activation du proxy explicite
Un administrateur de l'éditeur utilise l'assistant de l'éditeur pour activer la configuration explicite du proxy. Au démarrage, l'assistant de publication lit les paramètres du proxy dans HTTPS_PROXY et NO_PROXY du fichier /etc/environment. Lorsque les paramètres du proxy sont modifiés, l'Assistant Publisher enregistre la configuration dans le fichier /etc/environment. L'assistant d'édition ajoute également les paramètres actuels du proxy à la configuration d'APT dans /etc/apt/apt.conf.d/00publisherwizard. et le démon Docker dans /etc/systemd/system/docker.service.d/publisherwizard.conf.
Notes
- Un proxy HTTPS standard avec authentification par contournement (pas d'authentification) et pas d'inspection SSL doit être pris en charge.
- Cette fonctionnalité couvre tous les composants standard de Netskope, les mises à jour Ubuntu et Docker, les autres composants ne sont pas garantis d'utiliser la configuration du proxy et le trafic vers les applications privées n'utilise jamais la configuration du proxy, qu'il y ait ou non une liste de contournement.
Le menu des paramètres du proxy se trouve sous le menu des paramètres du réseau, comme indiqué ci-dessous :
Configuration menu: 1. Upgrade 2. Network settings 3. Syslog settings 4. Troubleshooter 5. Log settings 6. Exit
Appuyez sur 2 pour Paramètres réseau.
Network settings:
Network settings:
Local IP addresses: 172.31.17.115 Gateway: 172.31.16.1
DNS: 172.31.0.2
EDNS: Enabled for Stitcher connectivity
Default search domain: us-west-2.compute.internal
Warning: Connectivity to the Netskope Dataplane could not be verified. Please check your firewall settings or (re)configure network settings.
Proxy settings:
Disabled
Network interfaces:
eth0
Warning: This NPA Publisher appears to be running in a Public Cloud environment, please manage all network configurations, except for proxy settings, directly via the Cloud Provider Console.
Configuration menu:
1. Use DHCP
2. Use Static IP
3. Disable EDNS
4. Configure proxy settings
5. Return to previous menu
Appuyez sur 4 pour Paramètres proxy.
Proxy server: ip-172-31-24-80.us-west-2.compute.internal Proxy port: 3128 Proxy bypass:
Le serveur proxy et le port sont requis.
Le contournement du proxy est facultatif et n'est généralement pas nécessaire. Les destinations nécessaires aux fonctions internes sont automatiquement ajoutées.
- FQDN, Wildcards, IP, CIDR peuvent être ajoutés dans la liste de contournement.
- Des éléments de contournement de proxy peuvent être ajoutés, chacun étant séparé par une virgule. Par exemple
*.docker.io,www.tutorialspoint.com,100.0.1.20,100.0.0.0/8
Deux destinations, 127.0.0.01 et localhost, sont automatiquement ajoutées à la liste de contournement du proxy.
Network settings:
Local IP addresses: 172.31.17.115, 191.1.0.1
Gateway: 172.31.16.1
DNS: 172.31.0.2
EDNS: Enabled for Stitcher connectivity
Default search domain: us-west-2.compute.internal Stitcher: 103.47.244.165
Proxy settings:
Enabled
Server: ip-172-31-24-80.us-west-2.compute.internal Port: 3128
Bypass: 127.0.0.1,localhost
Network interfaces:
eth0
Warning: This NPA Publisher appears to be running in a Public Cloud environment, please manage all network configurations, except for proxy settings, directly via the Cloud Provider Console.
Si les paramètres du proxy sont activés et que l'adresse IP de Stitcher est affichée, cela signifie que l'éditeur fonctionne avec le proxy.
Configurer les paramètres du proxy avec le jeton de l'éditeur
L'éditeur prend en charge la configuration de l'éditeur avec le jeton de l'éditeur. Nous pouvons étendre manuellement le jeton de l'éditeur pour inclure les paramètres du proxy. Vous avez obtenu un jeton d'éditeur comme dans l'exemple suivant.
eyJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJucy0xMzgyLm5wYTAxLW1wLW5wZS5ucGEuYm9vbXNrb3BlLm NvbSIsInN1YiI6IjMwMjRhMGM0MjhmODk3NWUiLCJleHAiOjE3MDUwNDQzNzIsImp0aSI6I…
Les paramètres du proxy sont les suivants (les paramètres NO_PROXY ci-dessous sont obligatoires) :
HTTPS_PROXY=ip-172-31-24-80.us-west-2.compute.internal:3128 PUBLISHER_USE_PROXY="true" NO_PROXY=127.0.0.1,localhost
Codez les paramètres du proxy en exécutant une commande base64 dans le shell comme ci-dessous (Assurez-vous que 127.0.0.1 et localhost soient toujours ajoutés à la liste NO_PROXY) :
base64 <<END HTTPS_PROXY=ip-172-31-24-80.us-west-2.compute.internal:3128 PUBLISHER_USE_PROXY="true" NO_PROXY=127.0.0.1,localhost END
Et vous obtenez le résultat suivant :
SFRUUFNfUFJPWFk9aXAtMTcyLTMxLTI0LTgwLnVzLXdlc3QtMi5jb21wdXRlLmludGVybmFsOjMxMjg KUFVCTElTSEVSX1VTRV9QUk9YWT0idHJ1ZSIKTk9fUFJPWFk9MTI3LjAuMC4xLGxvY2FsaG9zdAo=
Combinez-les ensuite en veillant à commencer par le jeton, puis par une virgule (,) et enfin par la configuration du proxy en base64.
eyJhbGciOiJSUzI1NiJ9.eyJpc3MiOiJucy0xMzgyLm5wYTAxLW1wLW5wZS5ucGEuYm9vbXNrb3BlLm NvbSIsInN1YiI6IjMwMjRhMGM0MjhmODk3NWUiLCJleHAiOjE3MDUwNDQzNzIsImp0aSI6I…,SFRUUF NfUFJPWFk9aXAtMTcyLTMxLTI0LTgwLnVzLXdlc3QtMi5jb21wdXRlLmludGVybmFsOjMxMjgKUFVCT ElTSEVSX1VTRV9QUk9YWT0idHJ1ZSIKTk9fUFJPWFk9MTI3LjAuMC4xLGxvY2FsaG9zdAo=
Vous pouvez utiliser la chaîne combinée comme jeton d'éditeur. L'assistant d'édition séparera le jeton d'édition par une virgule, puis utilisera la première partie pour l'enregistrement de l'éditeur et la seconde pour les paramètres du proxy.
Dépannage
Lorsque les paramètres Proxy sont activés et que Stitcher est inconnu, cela signifie que l'éditeur ne peut pas se connecter à Stitcher via le serveur Proxy. Faites appel à votre équipe de vente pour passer en revue les étapes de dépannage.
Network settings:
Local IP addresses: 172.31.30.9
Gateway: 172.31.16.1
DNS: 172.31.0.2
EDNS: Enabled for Stitcher connectivity
Default search domain: us-west-2.compute.internal
Stitcher: Unknown
Proxy settings:
Enabled
Server: ip-172-31-24-80.us-west-2.compute.internal Port: 3128
Bypass: 127.0.0.1,localhost
Vous pouvez consulter le journal de l'assistant de publication dans logs/publisher_wizard.log. Pour accéder à ces journaux, vous pouvez d'abord fermer l'assistant de publication. Si le journal suivant est trouvé, cela signifie que la connexion via le proxy a échoué.
2024/10/23 08:10:49 UTC - 2967 publisherhelper => stitcherHost: -> 103.47.244.165 2024/10/23 08:10:54 UTC - 2967 Error: Failed to do request Connect "https://103.47.244.165:443": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
Si votre éditeur ne se connecte pas au Stitcher, vérifiez les journaux de l'éditeur dans logs/agent.txt (vous trouverez ci-dessous des indications de problèmes avec le serveur proxy configuré).
[ip-172-31-34-12:2024-11-07 15:48:02.458 +00:00] [info] httpsproxy.cpp:49:configureFromEnv():0x7f58a16ed930 Use Proxy [172.31.47.18:3128] with 2 bypass. 127.0.0.1,localhost [ip-172-31-34-12:2024-11-07 15:48:02.464 +00:00] [warning] tundevice.cpp:127:openDevice():0x0 ** TUN opened: tun0 [ip-172-31-34-12:2024-11-07 15:48:02.523 +00:00] [info] dispatcherEpoll.cpp:185:startDispatchSync():0x7f58a165d000 Start Dispatcher 0x0x7f58a165d000 Sync (Beta1). [ip-172-31-34-12:2024-11-07 15:48:02.623 +00:00] [info] agenthandler.cpp:526:refreshAndConnect():0x7f58a16ed500 Launching discovery [ip-172-31-34-12:2024-11-07 15:48:02.623 +00:00] [info] process_runner.cpp:26:start():0x7f58a1640230 Starting commands './npa_publisher_wizard -discoveryrefresh' [ip-172-31-34-12:2024-11-07 15:48:05.727 +00:00] [info] process_runner.cpp:74:handleClose():0x7f58a1640230 Process execution is complete [ip-172-31-34-12:2024-11-07 15:48:05.728 +00:00] [info] agenthandler.cpp:188:resolveByEDNS():0x7f58a1655290 Querying external DNS server for stitcher.npa.goskope.com [ip-172-31-34-12:2024-11-07 15:48:05.730 +00:00] [info] sslhelper.cpp:115:newCtx():0x0 Tls Cipher list : Default [ip-172-31-34-12:2024-11-07 15:48:08.797 +00:00] [info] tcpclient.cpp:195:handleClose():0x7f58a1715600 Closing socket m_fd 11 fd 11 [ip-172-31-34-12:2024-11-07 15:48:08.800 +00:00] [error] httpclient.cpp:118:sendResponseToChildOnce():0x7f58a163c040 HTTP Request GET /resolve?name=stitcher.npa.goskope.com HTTP/1.1 Host: dns.google User-Agent: curl/7.47.0 Content-Length: 0 Connection: close Content-Type: application/json . HTTP Client received non successful HTTP code. State 1 Timeout 0, Code 0 Length 0 Response [ip-172-31-34-12:2024-11-07 15:48:08.800 +00:00] [error] ednshttpclient.cpp:41:handleResponse():0x7f58a163c040 External DNS query failed [ip-172-31-34-12:2024-11-07 15:48:08.800 +00:00] [info] agenthandler.cpp:194:operator()():0x7f58a1655290 EDNS lookup for host stitcher.npa.goskope.com failed. Falling back to LDNS [ip-172-31-34-12:2024-11-07 15:48:08.801 +00:00] [info] agenthandler.cpp:251:operator()():0x0 Got Proxy [172.31.47.18] IP via LDNS. Proxy IP is [172.31.47.18]. [ip-172-31-34-12:2024-11-07 15:48:08.801 +00:00] [info] agenthandler.cpp:484:connectToStitcher():0x7f58a16ed500 Connecting to Stitcher stitcher.npa.goskope.com via Proxy 172.31.47.18 [ip-172-31-34-12:2024-11-07 15:48:08.801 +00:00] [info] sslclient.cpp:161:prepare():0x0 Connecting to 172.31.47.18:3128, fd: 11 [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [info] socket_tools.cpp:228:connectWithTimeOut():0x0 SO_ERROR value 113 (No route to host), fd: 11 [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [info] socket_tools.cpp:228:connectWithTimeOut():0x0 SO_ERROR value 0 (Success), fd: 11 [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [info] sslclient.cpp:254:connect():0x0 Establishing SSL connection to 172.31.47.18:3128, timeout: 60s [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [info] httpsproxy.cpp:148:requestConnect():0x7f58a16ed930 Requesting Proxy [172.31.47.18:3128] - [stitcher.npa.goskope.com:443] connection. [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [error] httpsproxy_transport.cpp:31:sendMessage():0x7f58a162b9c0 Failed to send to proxy. Broken pipe. [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [error] sslclient.cpp:236:sslConnect():0x0 Unable to establish SSL connection. Error 0 32 (Broken pipe). Closing socket 11 [ip-172-31-34-12:2024-11-07 15:48:11.869 +00:00] [info] agenthandler.cpp:576:establish():0x7f58a16ed500 SSL connection failed. Proxy [172.31.47.18:3128] - [stitcher.npa.goskope.com:443] state [Connection Error]. [ip-172-31-34-12:2024-11-07 15:48:12.871 +00:00] [info] agenthandler.cpp:526:refreshAndConnect():0x7f58a16ed500 Launching discovery [ip-172-31-34-12:2024-11-07 15:48:12.871 +00:00] [info] process_runner.cpp:26:start():0x7f58a1640230 Starting commands './npa_publisher_wizard -discoveryrefresh' [ip-172-31-34-12:2024-11-07 15:48:12.904 +00:00] [info] process_runner.cpp:74:handleClose():0x7f58a1640230 Process execution is complete [ip-172-31-34-12:2024-11-07 15:48:12.905 +00:00] [info] agenthandler.cpp:188:resolveByEDNS():0x7f58a1655290 Querying external DNS server for stitcher.npa.goskope.com [ip-172-31-34-12:2024-11-07 15:48:14.941 +00:00] [info] tcpclient.cpp:195:handleClose():0x7f58a1715900 Closing socket m_fd 11 fd 11 [ip-172-31-34-12:2024-11-07 15:48:14.941 +00:00] [error] httpclient.cpp:118:sendResponseToChildOnce():0x7f58a163c040 HTTP Request GET /resolve?name=stitcher.npa.goskope.com HTTP/1.1

