Встала передо мной задача - сделать обход 100500 могучих корпоративных проксей, чтобы дать своим людям почту по IMAP/SMTP и LDAP c сервера в интернете. Файрвольные конфигурации самые что ни на есть дикие - от тривиальных маскарадов и до сквидов с зарезаным до «только порты CONNECT 443 или HET/POST/HEAD порта 80», безопасники и сетевики либо дубовые, либо упёртые - так что просто настроить файрвол не получилось
В результате, родился меганенужный ультравелосипед - гибрид stunnel и httptunnel, с расширенными функциями, в частности с мультиплексированием туннелей через один порт.
Вкратце схема такая - на внешнём шлюзе (куда у людей есть доступ на порт 443) вешается мультиплексор. У юзера ставится клиентская часть, позволяющая пробрасывать порты с локалхоста через мультпиплексор куда надо. Соединения от клиента до сервера шифруются. В настоящий момент, через мультиплексор на 443 порту успешно заводятся одновременно HTTPS, XMPP, SMTP, IMAP, POP3 и LDAP - в общем, по сути любой протокол поверх TCP.
Написан на неправославном C# (хотя и сидя на православной федоре в monodevelop). Поезен в ситуациях, когда внешний коннект чрезвычайно ограничен, но «снаружи» есть гейт где можно поднять ответную часть, и когда нет возможности или смысла организовывать полноценный VPN.
Имеет смысл выкладывать, или «нинужно»?
P.S.: написан хоть и под нужды работы, но в порядке личной инициативы, без ТЗ и т.п., так что с лицензированием под GPL проблем не возникнет.