[ https://issues.apache.org/jira/browse/GUACAMOLE-47?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15806239#comment-15806239 ]
Nick Couchman commented on GUACAMOLE-47: ---------------------------------------- Okay, I've got an initial implementation of this going, which I'll link to after I get it onto GitHub and make sure all of my changes match the contribution guidelines. There are some caveats: - The easiest way to make this work is to grab the HttpServletRequest.getRemoteHost() and getRemoteAddr() values and use those. It's a little more complicated than just that, but that gets what the servlet has as the remote host. Unfortunately this doesn't always work as expected, particularly in situations where Guacamole/Tomcat is behind a reverse proxy, like Apache/mod_proxy or Nginx. - Dealing with the reverse proxy issue isn't too terribly difficult - there's a X-Forwarded-For header that is set by Apache's mod_proxy that can be passed through to the servlet. This has a couple of catches, though - first, it only passes through the IP address that it is forwarding for (essentially the original REMOTE_ADDR request header), and, second, you have to do a little bit extra Tomcat configuration to allow it to be passed through (via the RemoteIP valve). - To deal with proxy scenarios and get both the original REMOTE_HOST and REMOTE_ADDR values, you have to set up custom headers in whatever you're using to proxy, and the Guacamole code has to deal with it. I've written the code to use the custom X-Guacamole-Client-Host and X-Guacamole-Client-IP headers. I'm actually going to deal with these in reverse order - check for the custom headers, first, check for the X-Forwarded-For header, next, and finally use the getRemoteHost and getRemoteAddr methods. I'm happy to take comments from anyone off the bat - I'll post the forked GitHub code in a little while. > Get client hostname for use in guac RDP session > ----------------------------------------------- > > Key: GUACAMOLE-47 > URL: https://issues.apache.org/jira/browse/GUACAMOLE-47 > Project: Guacamole > Issue Type: New Feature > Components: guacamole-client > Affects Versions: 0.9.9 > Reporter: Zach Bonjour > Priority: Minor > > The "Clientname" variable should show the client name connected to the Apache > server. I am not a programmer, but if I am understanding this right, there > is a java servlet that could gather that information so it can be used in the > Guacamole session. > http://docs.oracle.com/javaee/6/api/javax/servlet/ServletRequest.html#getRemoteHost() > Is this possible? -- This message was sent by Atlassian JIRA (v6.3.4#6332)