- Использование прокси-сервера с самостоятельно размещенными средствами выполнения
- Настройка прокси-сервера с помощью переменных среды
- Использование файла .env для настройки конфигурации прокси-сервера
- Настройка конфигурации прокси-сервера для контейнеров Docker
- How to set up proxy using http_proxy & https_proxy environment variable in Linux?
- What is Proxy Server?
- Check current proxy configuration status (https_proxy/https_proxy)
- Set up proxy server using http_proxy environment variable
- Set up proxy without username and password
- Set up proxy with username and password
- Set up proxy with domain, username and password
- Special character (@) handling
- Set up proxy permanently using /etc/environment
- Set up proxy permanently using /etc/profile.d
- 4 thoughts on “How to set up proxy using http_proxy & https_proxy environment variable in Linux?”
Использование прокси-сервера с самостоятельно размещенными средствами выполнения
Можно настроить локальные средства выполнения, чтобы использовать прокси-сервер для обмена данными с GitHub.
Настройка прокси-сервера с помощью переменных среды
Если для обмена данными через прокси-сервер требуется локальное средство выполнения, приложение локального средства выполнения использует конфигурации прокси-сервера, заданные в следующих переменных среды:
- https_proxy : URL-адрес прокси-сервера для трафика HTTPS. При необходимости можно также включить учетные данные обычной проверки подлинности. Пример:
- http://proxy.local
- http://192.168.1.1:8080
- http://username:password@proxy.local
- http://proxy.local
- http://192.168.1.1:8080
- http://username:password@proxy.local
- example.com
- example.com,myserver.local:443,example.org
Переменные среды прокси-сервера считываются при запуске приложения локального средства выполнения, поэтому перед настройкой или запуском этого приложения необходимо задать переменные среды. При изменении конфигурации прокси необходимо перезапустить локальное приложение самостоятельного средства выполнения.
На компьютерах с Windows имена переменных среды прокси-сервера не учитывают регистр. На компьютерах с Linux и macOS рекомендуется использовать только строчные символы в переменных среды. Если у вас есть переменная среды в нижнем и верхнем регистре в Linux или macOS, например https_proxy и HTTPS_PROXY , локальное приложение Runner использует переменную среды в нижнем регистре.
Использование файла .env для настройки конфигурации прокси-сервера
Если параметры переменных среды не являются практическими, можно задать переменные конфигурации прокси-сервера в файле с именем .env в каталоге приложения локального средства выполнения. Например, это может потребоваться, если вы хотите настроить приложение средства выполнения в качестве службы в системной учетной записи. Когда запускается приложение средства выполнения, оно считывает переменные, заданные в .env для конфигурации прокси-сервера.
Ниже приведен пример .env конфигурации прокси-сервера:
https_proxy=http://proxy.local:8080 no_proxy=example.com,myserver.local:443
Настройка конфигурации прокси-сервера для контейнеров Docker
Если в рабочих процессах используются действия контейнера Docker или контейнеры служб, возможно, потребуется настроить Docker для применения прокси-сервера в дополнение к настройке вышеуказанных переменных среды.
Сведения о требуемой конфигурации Docker см. в разделе Настройка Docker для использования прокси-сервера в документации по Docker.
How to set up proxy using http_proxy & https_proxy environment variable in Linux?
In this article I will share the steps to set up proxy server using https_proxy and https_proxy environment variable.
What is Proxy Server?
A proxy server is a dedicated computer or a software system running on a computer that acts as an intermediary between an endpoint device, such as a computer, and another server from which a user or client is requesting a service. The proxy server may exist in the same machine as a firewall server or it may be on a separate server, which forwards requests through the firewall.
Check current proxy configuration status (https_proxy/https_proxy)
This variable will show if there is a proxy server configured on the system:
# echo $http_proxy # echo $https_proxy
If these variables are empty it would mean that there are no proxy servers configured on the system level.
Set up proxy server using http_proxy environment variable
The http_proxy and https_proxy environment variable is used to specify proxy settings to client programs such as curl and wget .
Set up proxy without username and password
Execute the below command with valid SERVER_IP and PORT on the terminal. This will enable proxy configuration for the current session but these values will not be persistent across reboot.
# export http_proxy=http://SERVER:PORT/
Set up proxy with username and password
You can modify the earlier command to add the username and password value assuming a valid authentication is required to enable the proxy server configuration. But again this command will also enable proxy server for the current session only and will not be persistent across reboots.
# export http_proxy=http://USERNAME:PASSWORD@SERVER:PORT/
Set up proxy with domain, username and password
Assuming you are also required to add domain detail while setting up proxy configuration on your system then use the below command
# export http_proxy=http://DOMAIN\\USERNAME:PASSWORD@SERVER:PORT/
Special character (@) handling
With more complex and robust handling of special characters in username or password follow How to setup http or https proxy with special characters in username and password
When the username or password uses the @ symbol, add a backslash (\) before the @ — for example:
export http_proxy=http://DOMAIN\\USERN\@ME:PASSWORD@SERVER:PORT
export http_proxy=http://DOMAIN\\USERNAME:P\@SSWORD@SERVER:PORT
Set up proxy permanently using /etc/environment
Now as I have highlighted above the above commands will work only for the current active session but will not be available across reboots. So to make these changes persistent define the environment variables in /etc/environment file:
# echo "http_proxy=http://proxy.example.com:3128/" >> /etc/environment
Set up proxy permanently using /etc/profile.d
For bash and sh users, add the export line given above into a new file called /etc/profile.d/http_proxy.sh file:
# echo "export http_proxy=http://proxy.example.com:3128/" > /etc/profile.d/http_proxy.sh
For csh and tcsh users, use the following command to set the http_proxy variable in a new file called /etc/profile.d/http_proxy.csh file:
# echo "setenv http_proxy http://proxy.example.com:3128/" > /etc/profile.d/http_proxy.csh
The extension of these files determines which shell will read them. The commands are not interchangeable.
Replace http_proxy with https_proxy in the export argument to enable proxy over SSL/TLS. This information will be provided by the Network Team who have provided the proxy server related details.
Lastly I hope the steps from the article to setup proxy using http_proxy and https_proxy environment variable in Linux was helpful. So, let me know your suggestions and feedback using the comment section.
Didn’t find what you were looking for? Perform a quick search across GoLinuxCloud
If my articles on GoLinuxCloud has helped you, kindly consider buying me a coffee as a token of appreciation.
For any other feedbacks or questions you can either use the comments section or contact me form.
Thank You for your support!!
4 thoughts on “How to set up proxy using http_proxy & https_proxy environment variable in Linux?”
Your example “Set up proxy permanently using /etc/environment” should use a double redirect (>>) to APPEND instead of a single redirect (>) to OVERWRITE the environment file. If someone were to copy/paste your example, they would overwrite any other existing environment settings in their /etc/environment file! # echo “http_proxy=http://proxy.example.com:3128/” >> /etc/environment Reply
I would like to set up a proxy in debian10 via environment file.
The username, password, however, includes a comma (,)
How does that affect the phrasing? Reply