VNC Connection Brokering (сервер протоколов RFB)
-
27-10-2019 - |
Вопрос
Пожалуйста, рассмотрите следующий сценарий:
VNC Client пытается подключиться с VNC -сервером, который стоит за NAT.
Я написал на Java Porting Stuster, который помогает мне достичь задачи, и это работает нормально.
Теперь мне нужно как -то добавить функциональность посредничества подключения в этом стимулителе, чтобы я также мог перехватить связь между клиентом VNC - сервером и аутентификации клиента VNC в утилите пересылки.
Возможно, вы догадались, что на самом деле я использую пароль, полученный от клиента VNC для некоторой аутентификации в моем приложении. Поскольку сервер RFB может быть реализован на уровне приложений, я думаю, что этот перехват возможен ... Vncauthentication (DES Encryption/Decryption) используется во всех вышеперечисленных коммуникациях. После успешной аутентификации в утилите пересылки я просто позволю переадресации продолжиться для этого соответствующего клиента, иначе я могу ее закрыть (прекратить пересылку).
Я попробовал некоторую реализацию, также попробовал настройку реализации Java сервера RFB ... но все еще не в состоянии туда добраться. Я знаю, это займет некоторое время, но нужно подтвердить, думаю ли я прямо.
Пожалуйста, дайте мне знать, если реализация вышеупомянутого сценария неоднозначна, невозможна или незаконно, и если это возможно, позвольте мне иметь несколько линий гильдии ...
Решение
Это кажется хорошей реализацией. Думайте об этом, как прокси VNC, как прокси HTTP (S). Есть также HTTP -аутентификация прокси. Вы реализуете часть протокола VNC для создания аутентификации прокси VNC.
Может быть, вы можете получить вдохновение от VNCProxy, существующий прокси Java VNC.