Using Anaconda behind a company proxy

When using Anaconda with a company proxy, you may encounter an HTTP and SSL error due to custom security profiles managed by corporate IT departments.


There are 3 potential ways to resolve this. Start with updating the .condarc file before trying the other methods.

Update the .condarc file

We recommend updating your .condarc file to include the proxy_servers key. This is the preferred method because this will affect only conda and not the system environment variables.

Read more about the .condarc file and using proxies.

For example:

proxy_servers:
    http: http://username:password@corp.com:8080
    https: https://username:password@corp.com:8080

You can see if your proxy is set by running conda info --all.

Environment variables

You can also resolve this error by updating the system environment variables. This can affect all CLI software across the whole system.

Windows

To change environment variables on Windows:

  1. In the Start menu, search for “env”.
  2. Select “Edit Environment Variables for your account”
  3. Select “Environment Variables…”
  4. Press “New…”
  5. Add two variables http_proxy and https_proxy both with the same value: http://proxy-XX:XXX

MacOS

To change environment variables on macOS:

  1. Check the current environment variable settings by running printenv in the terminal.
  2. To check a specific environment variable, use echo $variable_name.
  3. Temporarily change the environment variables by running export variable_name=variable_value. You can check if it’s there by running conda info --all.

To change your environment variables on macOS permanently, review this guide.

Linux

To change environment variables on Linux:

  1. Run export variable_name=variable_value
  2. To output the value of the environment variable from the shell, run echo $variable_name.

Read more about unsetting, listing, and persisting environment variables.

Netrc authentication

A .netrc file is an alternate way to accomplish the same goal of setting the *_PROXY environment variables or configuring things only for conda in the .condarc file. The risk in this approach is that changing the environment variables here will affect the system settings as a whole.

Read more about the .netrc file.