If you have components with limited (or no) internet access, you can configure proxies at various points in your infrastructure, depending on your connectivity limitations.
The examples provided here assume an unauthenticated proxy running at
proxy.example.vlan on port 8080.
Download agent installation packages through a proxy
If your Puppet Enterprise (PE) primary server is
airgapped, it can't download agent installation packages. If you want to use package management
to install agents, set up a proxy and specify its connection details in the
You must specify
pe_repo::http_proxy_port in the PE Master node
pe_repo class. You can do this in the PE console, the primary server's
To do this in the console, go to
pe_repo class, and set the
pe.conffile, add the following lines to the primary server's
pe.conffile. Make sure to use values specific to your proxy.
"pe_repo::http_proxy_host": "proxy.example.vlan", "pe_repo::http_proxy_port": 8080
proxy_uri='http://<HTTP_PROXY_HOST>:<HTTP_PROXY_PORT>' uri='https://pm.puppetlabs.com' curl --proxy "$proxy_uri" --head "$uri"
For general information about forming curl commands, authentication in commands, and Windows modifications, go to Using example commands.
Set a proxy for agent traffic
General proxy settings in an agent node's
file are used to manage HTTP connections directly initiated by the agent node.
http_proxy_portsettings in the agent node's
- On the agent node, open the
puppet.conffile, which is located at:
- Add the following lines to the file, with values specific to your
http_proxy_host = proxy.example.vlan http_proxy_port = 8080
For more information about HTTP proxy host options, including
no_proxy, go to the
in the Puppet
Set proxies for Code Manager traffic
Code Manager has proxy configuration options you can use to set proxies for connections to your Git server, the Forge, specific Git repositories, or all Code Manager operations over HTTP(S) transports.
Because Code Manager is run by Puppet Server, Code Manager's proxy
settings aren't affected by proxy settings in
puppet.conf (such as those to Set a proxy for agent traffic).
- Set the
r10k_proxyparameter in the base Code Manager settings, for example:
Customize Code Manager configuration in Hiera to set a global proxy for all HTTP(S)
operations, specific proxies for Git and Forge operations, or specific proxies for
individual Git repositories.
You can use these settings in combination to override other proxy settings. For example, you can specify a global proxy and a different proxy for Forge operations.