Подскажите, пожалуйста, как пустить внешний http-трафик через хост в локальной сети, авторизуя пользователей через AD?
Всем добрый день.
Есть следующая задачка.
Существуют некоторые достаточно навороченные сервисы авторизующие нас по внешнему IP.
Необходимо предоставить доступ внешним пользователям, имеющим учетную запись в нашей Active Directory к этим сервисам, пустив трафик через наш сервер. Вдобавок неплохо было бы иметь статистику по использованию этих сервисов.
Подскажите пожалуйста как красиво это организовать.
Сам вижу следующие варианты:
1) Скрипт анонимайзера (к примеру CGIProxy) установленный на внутреннем веб сервере. Но возникает вопрос с авторизацией внешних пользователей через AD.
2) VPN туннель. Мне это решение нравится, но проблема со статистикой и настройкой соединения у конченого пользователя, хотя можно этот процесс частично автоматизировать.
3) Публикация приложения (к примеру Mozilla) через сервер приложений или RDP через сервер терминалов.
Проблема в статистике, и кол-ве одновременных соединений… + еще кучка ньюансов.
4) Извращенный вариант с публикацией сайтов с помощью MS TMG. Работает к сожалению криво и косо.
Со статистикой облом. Зато с авторизацией никаких проблем.
6-е чувство намекает что есть какой-то очень простой вариант, но молчит как партизан. :)
Прошу у вас совета и пинка в нужную сторону, а то уже «глаз замылился».
UPD: В итоге использовал связку SQUID+Basic auth внутри корпоративной сети и WPAD файл опубликованный на внешнем сервере, содержащий информацию для браузера о том что к данным сервисам необходимо ходить через проксик.
Была предпринята попытка сделать Reverse Proxy на IIS. Провалилась с треском.
2 причины:
— некоторые сайты отдают сжатый контент и в нём невозможно изменить обратные ссылки.
— на одном из сайтов очень много поддоменов 3-го уровня (более 50-ти), замучался правилами rewrite разруливать.
Так же попробовал использовать скрипт анонимайзера CGIProxy, к сожалению он некорректно отображает сайты.