summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorivan <ivan>2007-12-25 00:35:20 +0000
committerivan <ivan>2007-12-25 00:35:20 +0000
commit0798f662ba9aa6213688be0e49d2367af9c9fa09 (patch)
tree724753868a37060b169091eb9e0dfda0a05c867d
parenta58b44c62073cc5d18789b694b9785333ea4b4f1 (diff)
just some documentation updates
-rw-r--r--Changes5
-rw-r--r--README22
-rw-r--r--SSH.pm77
3 files changed, 91 insertions, 13 deletions
diff --git a/Changes b/Changes
index f698c53..c2ef88c 100644
--- a/Changes
+++ b/Changes
@@ -1,5 +1,10 @@
Revision history for Perl extension Net::SSH.
+0.09 unreleased
+ - Add links to the more current stuff on CPAN.
+ - Documentation patch about ssh-keygen from terrence brannon
+ <tbone@directsynergy.com>
+
0.08 Thu Feb 12 16:44:36 2004
- replace ssh_cmd blocking read of STDOUT then STDERR with IO::Select
diff --git a/README b/README
index 5d121c6..9968434 100644
--- a/README
+++ b/README
@@ -1,14 +1,18 @@
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
@@ -26,10 +30,12 @@ Anonymous CVS access is available:
$ 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 $
-
diff --git a/SSH.pm b/SSH.pm
index 7a42152..3ac404c 100644
--- a/SSH.pm
+++ b/SSH.pm
@@ -230,17 +230,72 @@ sub _ssh_options {
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
@@ -249,10 +304,13 @@ Jeff Finucane <jeff@cmh.net> updated it and took care of the 0.04 release.
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.
@@ -261,12 +319,21 @@ 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>