Я хотел бы написать приложение для управления файлами, каталогами и процессами на сотнях удаленных ПК . На этих машинах выполняются программы измерений, которые в настоящее время управляются вручную с помощью TightVNC / RealVNC. Поскольку количество машин велико (и увеличивается), необходимо автоматическое управление. Планируется, что наши операторы получат клиентское приложение с поддержкой сценариев, из которого они смогут отправлять запросы и команды серверным приложениям, работающим на каждом удаленном ПК.
Для связи я хотел бы использовать настраиваемый протокол на основе TCP, но он сложен в административном отношении и очень долго может вскрыть пробоины в каждом брандмауэре. К счастью, есть программа со встроенным пользовательским веб-сервером на базе TinyWeb , работающим на каждом удаленном ПК , и порт 80 открывается в каждом брандмауэре. Эти веб-серверы обслуживают запросы, поступающие с центрального сервера, путем запуска программы CGI, которая загружает и отправляет части файлов журналов программ измерений.
Таким образом, планируется написать CGI-программу и обмениваться данными с клиентами через HTTP (используя GET и POST). Хотя (большинство) удаленных ПК находятся внутри корпоративной интрасети, они разбросаны по всей стране, Я хотел бы защитить связь . Было бы неразумно отправлять команды, которые управляют файлами и процессами, в виде простого текста. К сожалению, к программе, которая содержит веб-сервер, нельзя прикоснуться, поэтому я не могу просто подготовить ее для HTTPS. Я могу реализовать только уровень безопасности на клиенте и в программе CGI. Что мне делать?
Я прочитал все подобные вопросы в SO, но я все еще не уверен, что делать в этой конкретной ситуации. Спасибо за вашу помощь.