01 March 2019

Thinking out of the box Telecommunication test for millennials in IT

I've just done this at work, using some tricks that were daily routine back in the days of dialup. I wonder how a sysadmin half of my age would tackle this problem.

You are logged into a Linux server through a sort of corporate menu-driven shell proxy and you need to get a 10 MB binary file out of it for local troubleshooting purposes. The shell proxy and firewall do not allow your unprivileged account to ssh/sftp directly into the machine and you don't know its password either. There is a webserver but your unprivileged user has no write rights to its folders. You try to mail the file to yourself with the "mail" utility, but the test message you try before going all the way never reaches your mailbox into the organization. The server cannot do outbound ssh/ftp either.

So, how do you get the file on your local computer? Ask for further details and share your ideas in comments (moderated).


pardo said...

I found your challenge some years late but depending on the capabilities of that shell proxy either zmodem or catting the file to stdout via uuencode or base64 would be my first instincts.

(Not sure about your age target but I'm an old graybeard at soul)

Paolo said...

Well, I'm old enough to have forgotten how I've done it ...just two years later! Actually I am giving myself a chance to rediscover the procedure in case I need it again.

Regardless at that time I was on a Ubuntu workstation, uuencoding probably was my first choice. Then if *modem is not available on the remote host (package lrzsz on Ubuntu), catting and saving the terminal scrollback on your host machine could be the way to go. Not the fastest or practical route, but gets the job done.

Recently I have read of a guy that solved the same problem on a Windows RDS host by mapping each byte value to a mouse position in a matrix on the screen. It's just few lines of PowerShell on both ends. Cool.