Breaking In From the Inside

The situation was thusly.

I have a server running in my apartment, from which I've forwarded several ports to access services on it when I'm out of the house. One of those services is an FTP server to stream media. I'd forwarded a custom port to enable access, but every time I tried to connect, I got a mysterious error right around the time it tried to list the directory. What gives?

Turns out that, as I frequently forget, you also need to forward a range of ports for FTP servers to use in addition to the single standard port. The only problem was that I was on vacation and couldn't access my router's settings from outside the internal network. I had one extra port open for miscellaneous stuff (i.e. not SSH/HTTP), and that was the only one I could repurpose, so I set to work trying to figure out how to bounce back to the router through the router and through the server.

First, let's try using Lynx over SSH to access it.

It didn't work. Huh. Can't say I didn't expect that one.

Alright, that's fine. What else can I play around with? How about remote desktop? You can forward X11 sessions through SSH, so let's give that a go.

Oh. Alright, it doesn't feel like rendering everything today I guess. Even the stuff it did render took five minutes to appear. But there are actual remote desktop solutions that exist, right? Let's give VNC a go.

Oh I'm dumb, I forgot to change the VNC server's port. I think this should change it--

HHHRRRRNNNNGGGG

Wait. Wait. Hang on. My website is handled with nginx acting as a proxy server--it forwards any requests on port 80 to whatever port Ghost is running on. Maybe if I installed nginx on this server and told it to act as a go-between for the router for traffic on the one extra port I have...no, it has to disallow that for security. Right?

WOOHOO

Time to enjoy FTP.