Назад | Перейти на главную страницу

Настройте Cntlm на использование прокси, если он недоступен

Я нахожусь за корпоративным брандмауэром днем ​​и на открытом интернет-соединении ночью. Я настроил cntlm для пересылки на мой корпоративный прокси-сервер, но когда я подключаюсь через открытое соединение, я должен повторно настроить параметры прокси-сервера.

Есть ли способ сделать отказ cntlm от использования прокси, когда он недоступен?

# List of parent proxies to use. More proxies can be defined
# one per line in format <proxy_ip>:<proxy_port>
#
Proxy       10.73.55.44:80
# <~~ something here to fallback to a direct connection when no proxy is available

У cntlm есть это в дорожной карте, но я думаю, что решил эту проблему простым способом, используя squid: 1. Установите squid на тот же компьютер, что и cntlm, на порт 3129 (просто измените 3128 на 3129 в squid.conf) 2. Добавьте " Прокси localhost: 3129 "в список прокси cntlm

Вот и все.

Надеюсь это поможет.

Это решение переписывает соответствующую часть cntlm.conf на основе вашего текущего IP-адреса: http://mirkoweber.blogspot.hu/2011/10/using-cntlm-in-changing-environment.html

#!/bin/sh
case "$2" in
    up|vpn-up)
          IP=`/sbin/ifconfig  | grep 'inet addr:'| grep -v '127.0.0.1' | cut -d: -f2 | awk '{ print $1}'`
          case $IP in
             172.*)
                logger "setNoProxy.sh -set NoProxy for enterprise net"
                NoProxy="NoProxy         localhost, 127.0.0.*, 10.*, 192.168.*,enterprise-intranet"
                ;;
               *)
                logger "setNoProxy.sh - set NoProxy for direct net"
                NoProxy="NoProxy *"
                ;;
            esac
         sudo sed "s/^NoProxy.*$/$NoProxy/g" -i /etc/cntlm.conf
         sudo service cntlm restart
         ;;
esac