Корпоративный прокси без единой точки настройки — каждый инструмент тянет пакеты сам. Ниже минимальный набор: переменные окружения для всех сессий и отдельные конфиги для dnf, curl и wget.
Формат URL прокси: всегда с протоколом, например http://proxy.example.com:3128/ или https://proxy.example.com:3128/.
Системные переменные (все пользователи)
Создайте /etc/profile.d/proxy.sh:
MY_PROXY_URL="http://proxy.example.com:3128/"
export HTTP_PROXY="$MY_PROXY_URL"
export HTTPS_PROXY="$MY_PROXY_URL"
export FTP_PROXY="$MY_PROXY_URL"
export http_proxy="$HTTP_PROXY"
export https_proxy="$HTTPS_PROXY"
export ftp_proxy="$FTP_PROXY"
export NO_PROXY="localhost,127.0.0.1,.local"
export no_proxy="$NO_PROXY"
Примените в текущей сессии:
source /etc/profile.d/proxy.sh
dnf / yum
Добавьте в /etc/dnf/dnf.conf (или /etc/yum.conf на старых системах):
proxy=http://proxy.example.com:3128/
curl
Файл ~/.curlrc (или /etc/curlrc для всех):
proxy = http://proxy.example.com:3128/
wget
В /etc/wgetrc раскомментируйте или добавьте:
http_proxy = http://proxy.example.com:3128/
https_proxy = http://proxy.example.com:3128/
ftp_proxy = http://proxy.example.com:3128/
Проверка
Внешний IP должен совпадать с выходом прокси:
curl -s http://icanhazip.com
wget -qO- http://icanhazip.com
Если ответ — ваш прямой IP, прокси не подхватился: проверьте echo $HTTPS_PROXY и синтаксис URL.
Заметка
На RHEL 8+ с systemd некоторые сервисы игнорируют /etc/profile.d. Для unit-файлов задайте Environment=HTTP_PROXY=... в drop-in или используйте systemctl set-environment.