Безопасная передача данных через HTTP, когда HTTPS не доступен

Я хотел бы написать приложение для управления файлами, каталогами и процессами на сотнях удаленных ПК . На этих машинах работают программы измерения, которые в настоящее время управляются вручную с помощью TightVNC / RealVNC. Поскольку количество машин велико (и увеличивается), возникает необходимость в автоматическом управлении.Планируется, что наши операторы получат клиентское приложение с поддержкой сценариев, из которого они смогут отправлять запросы и команды серверным приложениям, работающим на каждом удаленном ПК.

Для связи я хотел бы использовать специальный протокол на основе TCP, но он сложен с административной точки зрения и требует очень много времени, чтобы открыть дыры в каждом брандмауэре на пути. К счастью, есть программа со встроенным пользовательским веб-сервером на основе TinyWeb , работающим на каждом удаленном ПК , а порт 80 открыт в каждом брандмауэре. Эти веб-серверы обслуживают запросы, поступающие с центрального сервера, путем запуска программы CGI, которая загружает и отправляет обратно части файлов журналов программ измерения.

Итак, мы планируем написать программу CGI и связываться с ней от клиентов через HTTP (используя GET и POST). Хотя (большая часть) удаленных ПК находится внутри корпоративной интрасети, они разбросаны по всей стране, Я хотел бы защитить связь . Было бы неразумно отправлять команды, управляющие файлами и процессами, в виде простого текста. К сожалению, программа, содержащая веб-сервер, не может быть затронута, поэтому я не могу просто подготовить ее для HTTPS. Я могу реализовать уровень безопасности только в клиенте и в программе CGI. Что мне делать?

Я прочитал все похожие вопросы в SO, но я все еще не уверен, что делать в этой конкретной ситуации. Спасибо за помощь.

9
задан kol 25 November 2011 в 12:13
поделиться