Welel, you could (as you say) use auth keys to connect to the apartment server.
Write a server eg using Perl to recv your request (on the apartment server), do the snmp query and rtn the results to you/local server.
Sounds like you don't need forking or threads, unless you want lots of real-time monitoring.
See
http://perldoc.perl.org/
Also, for worked examples, start here and read down the page :
http://perldoc.perl.org/perlipc.html...IO%3a%3aSocket
includes clients and servers using the IO::Socket module that handles all the fiddly bits for you
Edit: actually, that would be a plain text cxn, which for your purposes might be ok. If not, put the relevant cmds in a file on the apartment server and call it using
http://search.cpan.org/~ivan/Net-SSH-0.09/SSH.pm
OR
http://search.cpan.org/~dbrobins/Net...et/SSH/Perl.pm
See also
http://search.cpan.org/~bnegrao/Net-...SSH/Expect.pod which is prob what you want.
As always, TMTOWTDI