[ 
https://issues.apache.org/jira/browse/GUACAMOLE-2044?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17935750#comment-17935750
 ] 

Maurice Snoeren commented on GUACAMOLE-2044:
--------------------------------------------

I hope someone could support me so now and then. Especially, to find out how to 
implement certain functionality. For example, give some directions where to 
look and what is required to be changed. Sometimes the design of the 
application is not yet fully clear to me. Currently, I am busy with the 
Guacamole-client and I am working on the following functionality that I would 
like to add:
 * Add data-diode configuration to the web front end and the underlying Java 
classes (GuacamoleProxyConfiguration), so the correct GuacamoleSocket can be 
created. The configuration consist of three mandatory values that all are 
required to be filled:
 ** Sending data-diode: UDP host and UDP port
 ** Receiving data-diode: UDP port (to listen to incoming connections) 
 * Add the new data-diode GuacamoleSocket with the name DDGuacamoleSocket 
including the development of
 ** GuacamoleReader for the DDGuacamoleSocket with the name DDGuacamoleReader 
while UDP does not have stream readers like TCP does.
 ** GuacamoleWriter for the DDGuacamoleSocket with the name DDGuacamoleWriter 
while UDP does not have stream readers like TCP does
 ** Do I forget something to implement a new connection type to connect with 
guacd?
 * Implement that based on the proxy settings the DDGuacamoleSocket will be 
instantiates and used to communicate with guacd. 
 ** I see multiple places where the GuacamoleSockets are instantiated, namely 
in *extensions auth-json* in the *ConnectionService.java* class and in the main 
guacamole source {*}SimpleConnection.java{*}.
 ** What is the best approach to make sure the DDGuacamoleSocket is 
instantiated? 

> Secure remote access for critical networks using data-diode architecture
> ------------------------------------------------------------------------
>
>                 Key: GUACAMOLE-2044
>                 URL: https://issues.apache.org/jira/browse/GUACAMOLE-2044
>             Project: Guacamole
>          Issue Type: New Feature
>          Components: guacamole, guacd
>            Reporter: Maurice Snoeren
>            Priority: Minor
>              Labels: security
>         Attachments: guacamole_data_diode_design.png, 
> guacamole_data_diode_native_design.png
>
>
> To create remote access for critical networks and systems, it would be nice 
> to be able to communicate over a data-diode infrastructure. Data-diodes 
> provide a physical (or hardware enforced) network isolation between networks. 
> The current design idea is to put the data-diodes between the Guacamole 
> client and the guacd server.
> Currently, I am already busy with a data-diode implementation apart from the 
> Guacamole. This can be found on 
> [https://github.com/macsnoeren/guacamole-datadiode.] I am still in testing 
> phase and will shortly test this out in a production environment. I have 
> added a global design picture in the attachment. However, it would be nice if 
> the Guacamole project would natively support the use of a data-diode 
> architecture.
> This new feature can be implemented due to the great work of the Guacamole 
> protocol. A text-based streaming protocol that can be easily validated and 
> send over UDP-channels. How it would work with SSL is not yet thought of. 
> First step is to get it to work in my proof-of-concept.
> Today I had a look to the source code of the Guacamole project and build the 
> Guacamole client. Got some ideas and created a global design for the native 
> support to the Guacamole project concerning data-diodes. I also attached that 
> image to this ticket.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to