A third solution might be to prompt for the passphrase and perform the key setup in the parent process one time, before starting any children. Depending on your security policy, the parent may be able to cache the passphrase and reuse it for multiple machines.

A fourth solution might be to delegate all this to an ssh agent.

--
Rocco Caputo - rcap...@pobox.com


On Dec 28, 2009, at 16:23, Votava, Craig M (Craig) wrote:

Folks-

You can check out the following link to see how I've been educated on this issue so far, but I'm having trouble engineering a solution. I hope to be able to put this solution into the cookbook, once it's been reviewed by all interested parties.

http://www.perlmonks.org/?node_id=813252

Shows my initial question, the two answers I got, and my first failed attempt at a solution.

Here is a quick summary:

I'm using POE to fire off a series of processes that tail remote logfiles via ssh.

The child processes try the remote commands, expecting the ssh public/private keys to already be setup between the two machines. If not, the child knows how to go ahead and set them up for the user - however it needs to get a password from the user for the setup to work.

The parent process is running the Tk mainwindow for the GUI interface with the user.

The two suggested solutions are:
1.)     Run independent Tk event loops from the children
2.)     Have the children request the parent to get this information.

I'm currently trying to follow solution #2, but can't seem to get it to work. Any thoughts, pointers, suggestions, etc, are appreciated.

Thanks

-Craig

PS - My code is available from the above link



Reply via email to