I have a 2019 mac running MacOS 10.14.6. I've had it configured to use my company's corporate proxy for about a month and various command line programs such as curl, brew, and git behave as expected until very recently.
From day one, I've had /etc/profile configured as follows:
$ cat /etc/profile # System-wide .profile for sh(1) if [ -x /usr/libexec/path_helper ]; then eval `/usr/libexec/path_helper -s` fi if [ "${BASH-no}" != "no" ]; then [ -r /etc/bashrc ] && . /etc/bashrc fi http_proxy=http://proxy.whatever.com:80/ https_proxy=http://proxy.whatever.com:80/ ftp_proxy=http://proxy.whatever.com:80/ no_proxy="localhost,127.0.0.1,192.168.64.2" all_proxy=192.168.1.1:80 HTTP_PROXY=http://proxy.whatever.com:80/ HTTPS_PROXY=http://proxy.whatever.com:80/ FTP_PROXY=http://proxy.whatever.com:80/ NO_PROXY="localhost,127.0.0.1,192.168.64.2" ALL_PROXY=192.168.1.1:80 For some reason, all of the programs listed above now ignore the proxy setting despite an echo of the various proxy environment variables behaving as you'd expect in both Terminal and iTerm2:
# Output from Terminal $ curl https://www.google.com/ curl: (7) Failed to connect to www.google.com port 443: Operation timed out $ echo $http_proxy http://proxy.whatever.com:80/ $ echo $https_proxy http://proxy.whatever.com:80/ # Output from iTerm2 $ echo $http_proxy http://proxy.whatever.com:80/ $ curl https://www.google.com/ curl: (7) Failed to connect to www.google.com port 443: Operation timed out $ echo $https_proxy http://proxy.whatever.com:80/ Interestingly, printenv doesn't see the proxy environment variables while echo does and the old set method does too:
$ (set -o posix ; set) | grep proxy FTP_PROXY=http://proxy.whatever.com:80/ HTTPS_PROXY=http://proxy.whatever.com:80/ HTTP_PROXY=http://proxy.whatever.com:80/ ftp_proxy=http://proxy.whatever.com:80/ http_proxy=http://proxy.whatever.com:80/ https_proxy=http://proxy.whatever.com:80/ no_proxy=localhost,127.0.0.1,192.168.64.2 I've tried to apply logic and reason, but I have no mental model for what might be going wrong here.