How to configure a proxy#
The Ubuntu Pro Client can be configured to use an HTTP/HTTPS proxy as needed
for network requests. It will also honour the no_proxy
environment variable
(if set) to avoid using local proxies for certain outbound traffic. In
addition, the Ubuntu Pro Client will automatically set up proxies for all
programs required for enabling Ubuntu Pro services. This includes APT, snaps,
and Livepatch.
Note
Throughout this guide, we will set the HTTPS proxy with an http prefix. However, depending on your proxy setup, you might need to configure the Pro HTTPS proxy with a https prefix.
HTTP/HTTPS proxies#
To configure standard HTTP and/or HTTPS proxies, run the following commands:
$ sudo pro config set http_proxy=http://host:port
$ sudo pro config set https_proxy=http://host:port
After running the above commands, Ubuntu Pro Client will:
Verify that the proxy is working by using it to reach
api.snapcraft.io
Configure itself to use the given proxy for all future network requests
Configure
snapd
(ifsnapd
is installed) to use the given proxyConfigure Livepatch (if Livepatch has already been enabled) to use the given proxy:
If Livepatch is enabled after the
config
command, Ubuntu Pro Client will configure Livepatch to use the given proxy at that time.
To remove HTTP/HTTPS proxy configuration, run the following:
$ sudo pro config unset http_proxy
$ sudo pro config unset https_proxy
After running the above commands, Ubuntu Pro Client will also remove proxy
configuration from snapd
(if installed) and Livepatch (if enabled).
APT proxies#
APT proxy settings are configured separately. To have Ubuntu Pro Client manage your global APT proxy configuration, run the following commands:
$ sudo pro config set global_apt_http_proxy=http://host:port
$ sudo pro config set global_apt_https_proxy=http://host:port
After running the above commands, Ubuntu Pro Client will:
Verify that the proxy works by using it to reach
archive.ubuntu.com
oresm.ubuntu.com
.Configure APT to use the given proxy by writing an apt configuration file to
/etc/apt/apt.conf.d/90ubuntu-advantage-aptproxy
.
Caution
Any configuration file that comes later in the apt.conf.d
directory
could override the proxy configured by the Ubuntu Pro Client.
To remove the APT proxy configuration, run the following:
$ sudo pro config unset global_apt_http_proxy
$ sudo pro config unset global_apt_https_proxy
Note
Starting in Pro Client version 27.9, APT proxy config options changed.
The old settings: apt_http_proxy
and apt_https_proxy
will still
work and will be treated the same as global_apt_http_proxy
and
global_apt_https_proxy
, respectively.
Pro-service-only APT proxies#
To set an APT proxy that will only be used for Ubuntu Pro services, use the following commands instead:
$ sudo pro config set ua_apt_http_proxy=http://host:port
$ sudo pro config set ua_apt_https_proxy=http://host:port
Authenticate your proxy server#
If your proxy server requires authentication, you can pass the credentials directly in the URL when setting the configuration, as in:
$ sudo pro config set https_proxy=https://username:password@host:port
Check the configuration#
To see which proxies Ubuntu Pro Client is currently configured to use, you can
use the show
command.
$ sudo pro config show
The above will output something that looks like the following if there are proxies set:
http_proxy http://proxy
https_proxy http://proxy
global_apt_http_proxy http://aptproxy
global_apt_https_proxy http://aptproxy
Or it may look like this if there are no proxies set:
http_proxy None
https_proxy None
global_apt_http_proxy None
global_apt_https_proxy None