Что это такое?
Это собственно настройка туннелей uiTCP.
Зачем это нужно?
Для создания туннелей и передачи полезного трафика по ним.
Как это настроить?
- Выбрать режим клиента или сервера.
- Настроить параметры, необходимые для создания туннеля:
Сгенерировать ключи и сертификаты X.509 для SSL/TLS и разместить их на устройствах. (Либо отключить SSL в конфигурации конкретного туннеля или клиента.)
ВНИМАНИЕ! В качестве протокола безопасности необходимо явным образом выбрать одну из версий TLS.
- Настроить передачу полезного трафика через туннель:
- Для передачи в режиме TCP-прокси: настроить на вызывающей стороне соединения список портов TCP для приёма входящих соединений от прикладных клиентов, на отвечающей стороне параметры для установления исходящего соединения с прикладным сервером.
Направление установления полезных соединений "вызывающий-отвечающий" никак не связано с ролями сторон "клиент-сервер" применительно к установлению туннеля uiTCP. Например, при подключении банкомата вызывающим хостом является банкомат на клиентской площадке, отвечающим — процессинговый сервер в центре. Для удалённого доступа на тот же банкомат вызывающим хостом является рабочая станция администратора в центре, отвечающим — банкомат на клиентской площадке.
На вызывающем прикладном хосте вместо IP-адреса и порта TCP прикладного сервера указать адрес и порт на устройстве NSG с этой же стороны туннеля.
- Для передачи трафика UDP или иного протокола 4 уровня: на обеих сторонах создать датаграммные сокеты, установить для них режим
udp
или raw
, соответственно. Установить протоколы, номера портов, IP-адреса. На прикладных хостах вместо IP-адреса и порта UDP другой стороны указать адрес и порт на устройстве NSG с этой же стороны туннеля.
- Для передачи произвольного трафика IP в режиме виртуального соединения "точка-точка": на обеих сторонах создать сокеты с типом
net
, настроить для них IP-адреса и маршрутизацию, как для любых других IP-интерфейсов. При необходимости настроить NAT. Для расширенной настройки всех других параметров IP-интерфейса можно создать одноимённый шаблон в узле pseudo-interface
. На прикладных хостах указать ближайшее к ним устройство NSG в качестве следующего шлюза на маршруте к удалённой стороне.
- Если необходимо, создать дополнительные туннели к тому же или к разным серверам и собрать из них многоканальный сокет.
Подробно см. справку по всем вложенным узлам.
Ряд вышеперечисленных узлов задаётся на нескольких уровнях: для системы uiTCP в целом, для отдельного туннеля/клиента, канала связи и даже отдельной SIM-карты. В этом случае всегда приоритетными являются настройки более детального уровня.
Что делать, если это не работает?
- Смотреть журнал uiTCP на обеих сторонах.
- Убедиться, что используемые каналы связи функционируют нормально.
- Убедиться, что сервер uiTCP доступен по сети, используемый порт TCP не запрещён фильтрами, не перехватывается NAT, не занят другими приложениями и т.п.
- Попытаться зайти с клиента на сервер по Telnet на заданный номер порта. Нормальная ситуация — соединение устанавливается, но дальше остаётся пустой экран (сервер молчит и ждёт приветствия от клиента согласно протоколу). В этом случае отлаживать последующие компоненты туннеля: SSL, передачу полезного трафика на обеих сторонах. Ненормальная ситуация — Telnet-соединение не устанавливается с диагностикой "No reply from server..." или аналогичной. В этом случае см. выше.
- Убедиться, что на обеих сторонах корректно установлено системное время и сертификаты корректно сгенерированы для этого времени.
- Попытаться установить простейший туннель с минимумом функций, в т.ч. с отключённым TLS/SSL.
- Смотреть страницу Web-мониторинга для данного клиента, в т.ч. развернуть список соединений внутри туннеля, по которым передаётся полезная нагрузка (или
show.connections
).