For every new session in OS X terminal, I have to make my proxy settings again. I do this by entering the command
export http_proxy="username:password@ip address:port number"
Is there a way to make these proxy settings once for all?
Ask Different is a question and answer site for power users of Apple hardware and software. It only takes a minute to sign up.
Sign up to join this communityYour http proxy (just for some web sites not https ones and not for the rest of the internet) can be set for each terminal session by adding the line
export http_proxy="username:password@ip address:port number"
to your ~/.bash_profile file if using bash (the default from Panther to Mojave) or for later macOS the default shell is zsh and the file to use is ~/.zshrc
Note this will only affect command line programs.
~/.zshrc
file.
https_proxy
alongside of http_proxy
because some apps uses https.
Oct 7, 2021 at 19:43
To globally set an http proxy system-wide on MacOS (not just for a terminal session) you can use:
networksetup -setwebproxy wi-fi localhost 8080
networksetup -setwebproxystate wi-fi on
This assumes your network interface is called
wi-fi
(orWi-Fi
), and that your proxy is running onlocalhost
on port8080
.
To disable the proxy:
networksetup -setwebproxystate wi-fi off
This is equivalent to setting the proxy via mac system settings > Network > wi-fi > Advanced > Proxies > Web proxy.
networksetup -setsocksfirewallproxy wi-fi localhost 1080
networksetup -setsocksfirewallproxystate wi-fi on
To disable the socks proxy use:
networksetup -setsocksfirewallproxystate wi-fi off
All the commands above assume your netowork interface is wi-fi
. If you are connected via ethernet then most likely the interface will be en<SOME_NUMBER>
e.g. en0
and you'll need to use that instead of wi-fi
.
To find the active network interface run this from your terminal:
scutil --nwi | awk -F': ' '/Network interfaces/ {print $2;exit;}'
If you need a GUI wrapper for setting the HTTP/SOCKS/PAC proxies then check out this answer. The bitbar script linked in the answer also contains the commands for setting a SOCK5 or PAC proxy. Update: Bitbar has been renamed to xbar — it's an open-source GUI for text-mode scripts written in bash/applescript/node/golang/etc.
curl
works both with and without proxy. Using Big Sur 11.6
I'm assuming you mean aliases, not proxys.
Add it to ~/.bashrc and ~/.bash_profile. See this guide for more depth. I don't believe OS X supports a ~/.bash_aliases file.