Автор Тема: Прозрачная авторизация на BlueCoat Proxy SG из Alt Linux в домене Windows  (Прочитано 2825 раз)

Оффлайн alttester

  • Начинающий
  • *
  • Сообщений: 15
    • Email
Здравствуйте!
Есть Alt WS 9.0 Laertes, введена в домен AD под Win2012R2 Srv через ЦУП.
Была проблема с входом под доменными аккаунтами, решена добавлением в sssd.conf строки access_provider = permit в разделе [домен] (провайдер - ad)

Теперь возникла проблема с прозрачной авторизацией в FireFox.
Если для части корпоративных порталов она с грехом пополам решилась выставлением таких параметров в настройках FFox (about:config):
network.negotiate-auth.trusted-uris      .домен.ru
network.negotiate-auth.delegation-uris   .домен.ru
network.automatic-ntlm-auth.trusted-uris   .домен.ru

   (эти настройки уже были выставлены в true:
   network.automatic-ntlm-auth.allow-proxies
   network.negotiate-auth.allow-proxies)

network.automatic-ntlm-auth.allow-non-fqdn   true
network.negotiate-auth.allow-non-fqdn   true

То как быть с авторизацией на BlueCoat Proxy SG, непонятно. Пока пришлось сохранить доменные логин-пароль в хранилище паролей FFoxa.
Обновление Альта тоже возможно только через прокси.

Разово обновился под рутом:
в файле /etc/apt/apt.conf добавил строки
Acquire::http::Proxy "http://доменныйаккаунт:временныйпароль@proxy.домен.ru:порт";
Acquire::::Proxy "true";

выполнил команду
apt-get update && apt-get dist-upgrade

Предложение на https://support.symantec.com/us/en/article.tech246049.html
Connect to a terminal on your Linux machine and enter the following command: # export http_proxy="http://domain\\username:password@myproxy:8080"
Note: This configuration will be reset when you will close your session. In order to prevent executing this command each and every time you log in to your Linux machine, you can add this command line to your ~/.bashrc.

Тоже не кажется лучшим вариантом.
Можете что-нибудь подсказать? (если читать логи, то какие в данном случае?)

Оффлайн alttester

  • Начинающий
  • *
  • Сообщений: 15
    • Email
Прокси поддерживает ntlm-аутентификацию. Как я понял, в Альте все нужные пакеты samba уже установлены, нужно разобраться, что и как донастроить.

Оффлайн yaleks

  • Мастер
  • ***
  • Сообщений: 6 222
нет, вам нужно освоить kerberos, чтобы было прозрачно.
Но не уверен, для apt-get это получится...

Оффлайн alttester

  • Начинающий
  • *
  • Сообщений: 15
    • Email
вам нужно освоить kerberos
Настроить аутентификацию Kerberos на прокси (что-либо менять в настройках прокси) тоже не получится.

Оффлайн alttester

  • Начинающий
  • *
  • Сообщений: 15
    • Email
Если запускать firefox из /usr/bin/, как сказано в
https://unixforum.org/viewtopic.php?t=140940
https://bugzilla.mozilla.org/show_bug.cgi?id=554122#c7
То он не выдает многократно запрос логина-пароля, как при запуске через панель, хотя, как обычно при запуске, проверяет доступность http://detectportal.firefox.com/success.txt
В wireshark видно, что ffox при запуске из /usr/bin отправляет второй запрос, с NTLM_NEGOTIATE, но до конца процесс авторизации не доводит.
Причем strace /usr/bin/ntlm_auth какой-то реакции на запуск ffox не показывает.
...видимо, нужно было смотреть strace /usr/lib64/samba/bin/ntlm_auth


Оффлайн alttester

  • Начинающий
  • *
  • Сообщений: 15
    • Email
Ещё раз попробовал просмотреть логи, как сказано в https://unixforum.org/viewtopic.php?t=140940
Запуск strace -f -e trace=execve -o rst.txt /usr/bin/firefox с рабочего стола выдаёт:
execve("ntlm_auth"... Нет такого файла или каталога
Запуск же из /usr/bin даёт многократные предупреждения (фаерфокс соединяется в фоновом режиме)
execve("ntlm_auth", ["ntlm_auth", "--helper-protocol", "ntlmssp-client-1", "--use-cached-creds", "--username", "доменный аккаунт, под которым вошел"]... <unfinished ...>
...
execve("ntlm_auth", ["ntlm_auth", "--helper-protocol", "ntlmssp-client-1", "--use-cached-creds", "--username", "доменный аккаунт, под которым вошел"] = 0

При этом, при попытке открыть какой-то сайт прокси выдает сообщение: "Another round of authentification required".

При запуске strace -o ntlm.txt /usr/bin/ntlm_auth с вышеуказанными параметрами видно, что для ряда файлов samba программа сначала перебирает несуществующие каталоги, но в итоге все находит . К pam_winbindd не обращается.

При этом проверка работы samba, как на странице https://serveradmin.ru/nastroyka-samba-s-integratsiey-v-ad/#_Samba__AD_sssd, проходит успешно:
wbinfo -t
wbinfo -u
wbinfo -g
wbinfo -a DV\\доменноеимя%'пароль'
id доменноеимя

проходит успешно.

Ещё есть один момент. Как я понял, появилась свежая ошибка в samba. Её видно, если выставить переменную окружения NSPR_LOG_MODULES=negotiateauth:5 и запустить firefox -console (http://mbechler.eenterphace.org/blog/index.php?/archives/6-Doing-GSSNegotiate-SSO-using-Mozilla-Firefox,-MIT-Kerberos-and-PHP.html)

Но ффокс нужно запускать из /usr/bin
Тогда в консоли получаешь повторяющиеся сообщения:
directory_create_or-exist_strict: invalid ownership on directory /var/lib/samba/msg.lock
cmdline_messaging_context: Unable to initialize messaging context

на одном сайте сказано, что это вроде мусор, но появляется и при попытке открыть сайт каждый раз.

В том числе и при попытках открыть сайт.
Если выставить chmod 777 /var/lib/samba/msg.lock
То samba не запускается с ошибкой: invalid permissions on directory '/var/lib/samba/msg.lock': has 0777 should be 0755

Если выставить network.auth.force-generic-ntlm в true, то ошибка не появляется, но сразу же выскакивает окно авторизации, как при запуске ффокса не из /usr/bin

В общем, ничего пока непонятно. Нужно понимание\диагностика процесса работы firefox+ntlm_auth+samba пошагово.

Пока видно только, что фаерфокс ищет ntlm_auth только в каталоге, из которого запускается, что явно глюк.