Я бы начал с настройки обычного HTTP-сервера, такого как lighttp или Apache httpd.
Вы говорите, что у вас уже есть программа командной строки, которая выполняет реальную работу - в качестве первого шага я бы использовал это повторно и настроил бы веб-сервер для вызова вашей программы с использованием CGI - см. Пример http://httpd.apache.org/docs/2.2/howto/cgi.html для apache
Наконец, я бы выбрал некоторые javascript-фреймворки, такие как jQuery или YUI с возможностями Ajax, чтобы отправлять запросы на сервер для вызова скрипта CGI из веб-страницы. Вы также можете создать веб-приложение на основе форм без ajax или какой-либо среды, но это потребует от вас добавления в программу всех видов логики для генерации HTML-страниц. Используя Ajax, вы можете оставить приложение командной строки как есть и проанализировать любые ответы, которые оно дает, с помощью javascript, а затем использовать его для динамического изменения веб-страницы таким образом, чтобы это имело смысл для пользователя.
Если все это работает, то я бы попытался выяснить, как упаковать все эти компоненты. Возможно, вы просто хотите создать простой архив со всеми программами внутри, или, возможно, вы захотите пойти так далеко, как встроить веб-сервер в вашу программу. В качестве альтернативы вы можете захотеть сделать это наоборот и переписать вашу программу как модуль ISAPI, который вы можете подключить к своему веб-серверу. Или, если он недостаточно интегрирован, вы можете написать свой собственный (частичный) HTTP-сервер. Это действительно ваше дело (я бы, наверное, потратил время и силы на поиск самого скудного, самого подлого существующего http-сервера с открытым исходным кодом и использовал бы его вместо этого)
В любом случае, предыдущие шаги не будут потеряны в работе. Скорее всего, разработка веб-страницы будет составлять существенную часть работы, поэтому я бы, вероятно, создал бы быстрое и грязное рабочее решение, сначала используя старый трюк CGI, а затем разработал веб-страницу к моему удовлетворению. На этом этапе вы уже можете получить приемлемое распространяемое решение, просто поместив все программы в один архив (конечно, вам также придется настроить конфигурацию веб-сервера, например, изменить порт по умолчанию, чтобы он не мешал существующим веб-серверам). Только после этого я бы потратил время на создание более интегрированного и причудливого решения.