sharing existing desktop session is possible by installing "x11vnc" package("VNC server to allow remote access to an existing X session").
if your problem is networking, refer there, we've given you an answer how to connect in GUI mode.
here I use the following scheme: when I go away, I start x11vnc on 127.0.0.1, then I contact my sshd and forward port to 127.0.0.1:5900(where x11vnc listens) then I connect it with any VNC viewer through encrypted channel. Note that my server is as well behind a router, I'm just forwarding port to sshd so I can get in from outside.
If your external IP is dynamic you can use solutions like dyndns.com etc.