Net::SSH
-Copyright (c) 2002 Ivan Kohler.
-Copyright (c) 2002 Freeside Internet Services, LLC
+Copyright (c) 2002 Ivan Kohler
+Copyright (c) 2007 Freeside Internet Services, Inc.
All rights reserved.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
This module implements a Perl interface to ssh. It is a simple wrapper around
-the system `ssh' command. For an all-perl implementation that does not require
-the system `ssh' command, see Net::SSH::Perl.
+the system `ssh' command. For a perl implementation that does not require
+the system B<ssh> command, see L<Net::SSH::Perl> instead. For a wrapper
+version that allows you to use passwords, see L<Net::SSH::Expect> instead.
+For another non-forking version that uses the libssh2 library, see
+L<Net::SSH2>. For a way to execute remote Perl code over an ssh connection
+see L<IPC::PerlSSH>.
To install:
perl Makefile.PL
$ cvs checkout Net-SSH
as well as <http://www.420.am/cgi-bin/cvsweb/Net-SSH>.
-A mailing list for users and developers is available. Send a blank message to
-<ivan-netssh-subscribe@420.am> to subscribe.
+Assitance wanted - this module could really use a maintainer with enough time
+to at least review and apply more patches. Or the module should just be
+deprecated in favor of Net::SSH::Expect or made into an ::Any style
+compatibility wrapper that uses whatver implementation is avaialble
+(Net::SSH2, Net::SSH::Perl or shelling out like the modules does now). Please
+email if you are interested in helping.
Ivan Kohler <ivan-netssh_readme@420.am>
-$Id: README,v 1.4 2002-02-16 18:26:31 ivan Exp $
-
Q: How do you supply a password to connect with ssh within a perl script
using the Net::SSH module?
-A: You don't. Use RSA or DSA keys. See the ssh-keygen(1) manpage.
+A: You don't (at least not with this module). Use RSA or DSA keys. See the
+ quick help in the next section and the ssh-keygen(1) manpage.
+
+A #2: See L<Net::SSH::Expect> instead.
Q: My script is "leaking" ssh processes.
A: See L<perlfaq8/"How do I avoid zombies on a Unix system">, L<IPC::Open2>,
L<IPC::Open3> and L<perlfunc/waitpid>.
+=head1 GENERATING AND USING SSH KEYS
+
+=over 4
+
+=item 1 Generate keys
+
+Type:
+
+ ssh-keygen -t rsa
+
+And do not enter a passphrase unless you wanted to be prompted for
+one during file copying.
+
+Here is what you will see:
+
+ $ ssh-keygen -t rsa
+ Generating public/private rsa key pair.
+ Enter file in which to save the key (/home/User/.ssh/id_rsa):
+ Enter passphrase (empty for no passphrase):
+
+ Enter same passphrase again:
+
+ Your identification has been saved in /home/User/.ssh/id_rsa.
+ Your public key has been saved in /home/User/.ssh/id_rsa.pub.
+ The key fingerprint is:
+ 5a:cd:2b:0a:cd:d9:15:85:26:79:40:0c:55:2a:f4:23 User@JEFF-CPU
+
+
+=item 2 Copy public to machines you want to upload to
+
+C<id_rsa.pub> is your public key. Copy it to C<~/.ssh> on target machine.
+
+Put a copy of the public key file on each machine you want to log into.
+Name the copy C<authorized_keys> (some implementations name this file
+C<authorized_keys2>)
+
+Then type:
+
+ chmod 600 authorized_keys
+
+Then make sure your home dir on the remote machine is not group or
+world writeable.
+
+=back
+
=head1 AUTHORS
Ivan Kohler <ivan-netssh_pod@420.am>
+Assistance wanted - this module could really use a maintainer with enough time
+to at least review and apply more patches. Or the module should just be
+deprecated in favor of Net::SSH::Expect or made into an ::Any style
+compatibility wrapper that uses whatver implementation is avaialble
+(Net::SSH2, Net::SSH::Perl or shelling out like the modules does now). Please
+email Ivan if you are interested in helping.
+
John Harrison <japh@in-ta.net> contributed an example for the documentation.
Martin Langhoff <martin@cwa.co.nz> contributed the ssh_cmd command, and
Anthony Awtrey <tony@awtrey.com> contributed a fix for those still using
OpenSSH v1.
+Thanks to terrence brannon <tbone@directsynergy.com> for the documentation in
+the GENERATING AND USING SSH KEYS section.
+
=head1 COPYRIGHT
Copyright (c) 2004 Ivan Kohler.
-Copyright (c) 2002 Freeside Internet Services, LLC
+Copyright (c) 2007 Freeside Internet Services, Inc.
All rights reserved.
This program is free software; you can redistribute it and/or modify it under
the same terms as Perl itself.
Not OO.
-Look at IPC::Session (also fsh)
+Look at IPC::Session (also fsh, well now the native SSH "master mode" stuff)
=head1 SEE ALSO
-For an all-perl implementation that does not require the system B<ssh> command,
-see L<Net::SSH::Perl> instead.
+For a perl implementation that does not require the system B<ssh> command, see
+L<Net::SSH::Perl> instead.
+
+For a wrapper version that allows you to use passwords, see L<Net::SSH::Expect>
+instead.
+
+For another non-forking version that uses the libssh2 library, see
+L<Net::SSH2>.
+
+For a way to execute remote Perl code over an ssh connection see
+L<IPC::PerlSSH>.
ssh-keygen(1), ssh(1), L<IO::File>, L<IPC::Open2>, L<IPC::Open3>