Подскажите, пожалуйста, как пустить внешний http-трафик через хост в локальной сети, авторизуя пользователей через AD?

Всем добрый день.
Есть следующая задачка.
Существуют некоторые достаточно навороченные сервисы авторизующие нас по внешнему IP.
Необходимо предоставить доступ внешним пользователям, имеющим учетную запись в нашей Active Directory к этим сервисам, пустив трафик через наш сервер. Вдобавок неплохо было бы иметь статистику по использованию этих сервисов.
Подскажите пожалуйста как красиво это организовать.

Сам вижу следующие варианты:

1) Скрипт анонимайзера (к примеру CGIProxy) установленный на внутреннем веб сервере. Но возникает вопрос с авторизацией внешних пользователей через AD.

2) VPN туннель. Мне это решение нравится, но проблема со статистикой и настройкой соединения у конченого пользователя, хотя можно этот процесс частично автоматизировать.

3) Публикация приложения (к примеру Mozilla) через сервер приложений или RDP через сервер терминалов.
Проблема в статистике, и кол-ве одновременных соединений… + еще кучка ньюансов.

4) Извращенный вариант с публикацией сайтов с помощью MS TMG. Работает к сожалению криво и косо.
Со статистикой облом. Зато с авторизацией никаких проблем.

6-е чувство намекает что есть какой-то очень простой вариант, но молчит как партизан. :)

Прошу у вас совета и пинка в нужную сторону, а то уже «глаз замылился».
  • Вопрос задан
  • 3567 просмотров
Решения вопроса 1
xtelekom
@xtelekom
Можно сделать через Squid, все что вы описали поддерживается. Статистика так же прикручивается легко.
Ответ написан
Пригласить эксперта
Ответы на вопрос 4
Я вижу три более-менее сносно работающих варианта:
1. Reverse Proxy с поддержкой авторизации в AD, желательно NTLM (как в случае TMG) — работает, на самом деле, достаточно хорошо, со статистикой — вопрос спорный, т.к. TMG вполне себе ведет статистику. Но можно попробовать какой-нибудь другой прокси. Навскику, должен получиться Apache+mod_proxy — но не тестировал.
2. Обычный прокси с поддержкой AD + (опционально) WPAD, чтобы трафик во внутреннюю сеть шел через прокси. Но IP клиентов так же будут только в логах прокси.
3. Наиболее «прозрачное» решение:
Сделать два одинаковых сайта на iis указывающих в одну папку на разных IP. В одном включить авторизацию, в другом разрешить обычный доступ. Через NAT опубликовать сайт с авторизацией.
Ответ написан
Комментировать
bugaga0112358
@bugaga0112358
Fall_Angel
@Fall_Angel Автор вопроса
Продолжаю изыскания в данном вопросе.

Была предпринята попытка сделать Reverse Proxy на IIS. Провалилась с треском.
2 причины:
— некоторые сайты отдают сжатый контент и в нём невозможно изменить обратные ссылки.
— на одном из сайтов очень много поддоменов 3-го уровня (более 50-ти), замучался правилами rewrite разруливать.

Так же попробовал использовать скрипт анонимайзера CGIProxy, к сожалению он некорректно отображает сайты.
Ответ написан
Комментировать
Fall_Angel
@Fall_Angel Автор вопроса
В конечном итоге сделал следующее:
Поднял во внутренние сети SQUID и настроил на нем Basic авторизацию через AD
Опубликовал на внешнем сайте файл WPAD и инструкцию по применению.
В итоге заинтересованные пользователи должны вписать в настройках браузера путь до WPAD файла, а дальше трафик до целевых ресурсов идет через внутренний прокси авторизовывая пользователей через AD.
Момент с самостоятельным прописыванием пути до WPAD мне очень не нравится, но на данный момент это единственное решение которое я вижу.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы