Имеется локальная сеть, выход в “мир” в которой осуществялется через TMG-фаервол.
Для работы с ним – на одном из серверов установлен CNTLM-прокси, через который должны ходить другие сервера.
Задача – задать глобальные настройки прокси для всех пользователей.
Настройки окружения для всех пользователей определяются скриптом /etc/profile
.
Среди прочего – в нём присутствует возможность дополнить эти настройки, поместив новый скрипт в каталог /etc/profile.d/.
В самом скрипте это выглядит так:
for i in /etc/profile.d/*.sh ; do if [ -r "$i" ]; then if [ "${-#*i}" != "$-" ]; then . "$i" else . "$i" >/dev/null 2>&1 fi fi done
Создаём новый файл, к примеру /etc/profile.d/proxy.sh
с таким содержимым:
export http_proxy=http://10.***.***.164:3128 export https_proxy=http://10.***.***.164:3128
Где 10.***.***.164:3128
в данном примере – пркоси-сервер с CNTLM.
Проверяем:
# su -l someusername $ echo $http_proxy http://10.***.***.164:3128
Если прокси уже были где-то прописаны – удалим их, например в файле /etc/wgetrc
:
# You can set the default proxies for Wget to use for http, https, and ftp. # They will override the value in the environment. #http_proxy = http://192.168.*.*:8080
Но оставляем строку:
# If you do not want to use proxy at all, set this to off. use_proxy = on
И запустим wget
от пользователя:
$ wget ya.ru --2014-09-09 07:11:37-- http://ya.ru/ Connecting to 10.***.***.164:3128... connected. Proxy request sent, awaiting response... 200 Ok ... 2014-09-09 07:11:37 (2.31 MB/s) - “index.html.1” saved [8478/8478]
И на прокси-сервере – проверим лог CNTLM:
# cat /var/log/messages | grep 10.***.***.96 Sep 9 14:10:06 zeus cntlm[19998]: Connection accepted from 10.***.***.96:55359 Sep 9 14:11:40 zeus cntlm[19998]: Connection accepted from 10.***.***.96:55414
Готово.