Fedora linux forum

Форум русской поддержки ОС Fedora linux

 
  • Список
  •  » Сеть
  •  » Fedora и Windows proxy с авторизацией по доменному имени пользователя

#1 2009-09-04 12:49:27

isha
Member
Зарегистрирован: 2008-08-18
Сообщений: 60

Fedora и Windows proxy с авторизацией по доменному имени пользователя

Решил поделится настройкой авторизации в Windows proxy таких программ как wget, yum, elinks, в общем всех програм которые работают с интернетом из консоли. Недавно столкнулся с такой ситуация Windows proxy требует авторизации доменного пользователя для выхода в интернет, приложения gnome умеют работать в данной ситуации, а консольные приложения нет, но они умеют работать с прокси которая не требует авторизации. Я перерыл интернет в поисках ответа на свой вопрос, предлагалось два решения, пакет програм ntlmap и cntlm, с ntlmap у меня ничего не получилось, а вот с cntlm все заработало даже очень хорошо. Далее будет пошагово описана настройка cntlm.

Начальная ситуация, домен Windows, наш компьютерой с установленной Fedora и настроенной сетью.

Далее действия по пунктам.
1. Временно отключаем репозитории, это делается снятием галочек из программы вызываемой из системного меню "Система->Администрирование->Источники программ".
2. Открываем консоль и меняем пользователя на root

Код:

su -
вводим пароль root

3. Устанавливаем следующие пакеты samba и glibc из дистрибутива Fedora (если вы пользуетесь 64 битной системой то пакет glibc нужно установить для 32 битных систем). Допустим дистрибутивные пакеты находятся по пути /media/Fedora\ 11\ leonidas/Packages.

Код:

cd /media/Fedora\ 11\ leonidas/Packages

набираем строку yum localinstall --nogpgcheck ./samba- жмем табуляцию, в итоге увидим список пакетов у которых имя начинается со слова samba

Код:

[root@asalnikov Packages]# yum localinstall --nogpgcheck ./samba-
samba-3.3.2-0.33.fc11.x86_64.rpm samba-common-3.3.2-0.33.fc11.i586.rpm samba-winbind-3.3.2-0.33.fc11.i586.rpm
samba-client-3.3.2-0.33.fc11.x86_64.rpm samba-common-3.3.2-0.33.fc11.x86_64.rpm samba-winbind-3.3.2-0.33.fc11.x86_64.rpm

Нам нужен пакет samba-3.3.2-0.33.fc11.x86_64.rpm, выполняем команду

Код:

yum localinstall --nogpgcheck ./samba-3.3.2-0.33.fc11.x86_64.rpm

Аналогично для пакета glibc, набираем строку yum localinstall --nogpgcheck ./glibc- жмем табуляцию, видим список пакетов

Код:

[root@asalnikov Packages]# yum localinstall --nogpgcheck ./glibc-
glibc-2.10.1-2.i586.rpm glibc-2.10.1-2.x86_64.rpm glibc-devel-2.10.1-2.i586.rpm glibc-headers-2.10.1-2.x86_64.rpm
glibc-2.10.1-2.i686.rpm glibc-common-2.10.1-2.x86_64.rpm glibc-devel-2.10.1-2.x86_64.rpm

Нам нужен пакет glibc-2.10.1-2.i686.rpm и если установлена 64 битная Fedora пакет glibc-2.10.1-2.x86_64.rpm, выполняем следующие команды

Код:

yum localinstall --nogpgcheck ./glibc-2.10.1-2.i686.rpm
yum localinstall --nogpgcheck ./glibc-2.10.1-2.x86_64.rpm # только для 64 битных систем

4. Всеми правдами и неправдами достаем пакет cntlm (я использовал версию cntlm-0.35-1.i386) и устанавливаем его. Вот адреса по которым можно скачать cntlm http://cntlm.sourceforge.net и http://sourceforge.net/projects/cntlm.
Выполняем команду

Код:

yum localinstall --nogpgcheck /Тут должен быть полный путь к пакету/cntlm-0.35-1.i386.rpm

Всё, все необходимые пакеты установлены, теперь нужно настроить cntlm
5. Ищем файл /etc/cntlm.conf, и редактируем следующие в нем строки.
Username<------>MyUserName(Ваше имя пользователя в домене Windows)
Domain<><------>MyDomain.ru(Ваше адрес домена Windows)
Password<------>MyPassword(Пароль вашего пользователя в домене Windows)
Workstation<--->MyWorstation(Имя вашего компьютера в домене Windows)
Proxy<-><------>MyProxy:8080(Адрес прокси в домене)
Listen<><------>3128(порт для локальной прокси)
Auth<--><------>NTLM(Тип аутентификации в домене, скорее всего именон этот тип стоит у вас на proxy)
Flags<-><------>0x07820000(Соотвествующие флаги для аутентификации в домене)
И сохраняем измененный файл.
6. Запускаем cntlm.

Код:

service cntlmd start

Если мы увидели следующую строку, то значит все хорошо сделали, если нет, то нужно будет искать причину неисправности.

Код:

Starting CNTLM Authentication Proxy: [ OK ]

7. Назначим запуск cntlm со стартом системы, для этого откроем окно настройки служб "Система->Администрирование->Службы", в списке служб найдем службу cntlmd и установим ей в настройка запуск на уровнях 3,4 и 5.
8. Настроим прокси для командной строки, отредактируем файл /etc/bashrc, где в конце файла добавим строчки
   http_proxy=http://127.0.0.1:3128
   HTTP_PROXY=http://127.0.0.1:3128
   export http_proxy HTTP_PROXY
После такой настройки большинство програм начнут работать с интернетом через прокси. но для yum в файле /etc/yum.conf, следует добавить две строчки proxy=http://127.0.0.1:3128 и proxy_use=on. для работы wget достаточно в файле /etc/wgetrc раскомментировать строчку use_proxy = on.
9. В настройках gnome "Система->Параметры->Сетевая прокси-служба", установим ручную настройку прокси, в поле "прокси для http" укажем 127.0.0.1, в поле "порт" укажем 3128, и поставим галочку "Использовать общий прокси для всех протоколов". После этой проедуры мы для всех програм среды gnome можем просто указывать использовать системные настройки прокси.
10. Перезапустите систему, что бы все настройки вступили в силу.
Возможные неисправности и методы их поиска:
  а) если вы установили cntlm более поздней версии чем указанная в этом руководстве, то скорее всего пакет установился не до конца, нужно будет проверить следующие вещи.
     Созданы ли пользователь cntlm и группа cntlm, если нет то создать их.
     Есть ли каталог /var/run/cntlm и являеться ли пользователем cntlm его владельцем с полным доступом к каталогу.
  б) Возможно ваш домен виндовс использует не ntlm аутенфикацию, тогда выполните следующую команду
     cntlm -M http://google.ru
     Вы увидите следующий результат
     Config profile  1/11... OK (HTTP code: 301)
     ----------------------------[ Profile  0 ]------
     Auth            NTLMv2
     PassNTLMv2      xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
     ------------------------------------------------
     где против поля Auth стоит тип авторизации поддерживаем вашей Windows proxy, поправте соотвественно поле Auth в файле /etc/cntlm.conf, а так же поле Flags в соотвествии с таблицей ниже.
     Auth   Flags
     NT     0x05820000
     LM     0x06820000
     NTLM   0x07820000

P.S. Старался написать так, что бы настроить все это смог даже новичек в linux вроде меня.

Отредактированно isha (2009-09-04 12:52:03)

Неактивен

 

#2 2009-09-04 14:05:07

nvl
Member
Зарегистрирован: 2007-11-01
Сообщений: 574

Re: Fedora и Windows proxy с авторизацией по доменному имени пользователя

Спасибо интересно, но помоему Вы разделом ошиблись, это надо поместить в Статьи, инструкции и How-To

Неактивен

 

#3 2009-09-04 15:07:23

isha
Member
Зарегистрирован: 2008-08-18
Сообщений: 60

Re: Fedora и Windows proxy с авторизацией по доменному имени пользователя

нет, не ошибся, просто думаю что если администрация посчитает нужным переместит в инструкции. а пока просто не решился туда поместить. мало ли моет кто дополнит, и можно будет сделать нормальную инструкцию.

Неактивен

 
  • Список
  •  » Сеть
  •  » Fedora и Windows proxy с авторизацией по доменному имени пользователя