The UNIX and Linux Forums  

Go Back   The UNIX and Linux Forums > Top Forums > UNIX for Advanced & Expert Users
Google UNIX.COM


UNIX for Advanced & Expert Users Advanced UNIX and Linux questions go here. Expert-to-Expert.

More UNIX and Linux Forum Topics You Might Find Helpful
Thread Thread Starter Forum Replies Last Post
FTP questions XZOR UNIX for Dummies Questions & Answers 1 07-21-2006 11:02 AM
awk questions bobo UNIX for Dummies Questions & Answers 1 06-27-2006 09:33 PM
new bie questions gauri UNIX for Dummies Questions & Answers 2 02-09-2006 10:02 PM
ssh-keygen trust problem PaulC Linux 4 04-21-2005 06:17 AM
C questions Esaia High Level Programming 2 01-17-2003 06:57 PM

Reply
 
Submit Tools LinkBack Thread Tools Search this Thread Display Modes
  #8  
Old 08-23-2007
Registered User
 

Join Date: Jun 2007
Posts: 15
ssh-keygen questions (not working)

Ok. The program still is not working. It still is asking for a password. The funny thing is when I use 'ssh dwebapp1' at the command line it will show 'source user@remote host'

<<source>>
#!usr/bin/ksh

hostname=dwebapp1
login_name=clport

# password=

if [ -n `ssh $login_name@$hostname 'ls test/testfile.txt 2>/dev/null'` ]; then

echo file exists
else
echo "file doesn't exist";
fi

<<output>>
$ ksh file_exists.ksh
clport@dwebapp1's password:
file exists
Reply With Quote
Forum Sponsor
  #9  
Old 08-23-2007
Registered User
 

Join Date: Jun 2007
Posts: 15
ssh-keygen questions (not working) --> resolved

OK. It does pay to know which ssh you are using.

$ ssh -V
OpenSSH_3.6.1p2, SSH protocols 1.5/2.0, OpenSSL 0x0090605f

this pointed me to the proper syntax for using private/public keys and ssh

public/private passwordless keys using: ksh and OpenSSH

This process allows an ssh connection between 2 servers without command-line authentication and run commands via a program.

From the server you will be connecting from: create a key pair:

ssh-keygen -t rsa #note: I did not use passphrase - just hit ‘enter’

<<output to screen>>
Generating public/private rsa key pair.
Enter file in which to save the key (/home/WebARCH/ol_inv/.ssh/id_rsa):
Created directory ’/home/WebARCH/ol_inv/.ssh’.
Enter passphrase (empty for no passphrase): <press enter key and bypass>
Enter same passphrase again: <press enter key and bypass>
Your identification has been saved in /home/djm/.ssh/id_rsa.
Your public key has been saved in /home/djm/.ssh/id_rsa.pub.
The key fingerprint is:
3c:7e:41:2c:d2:51:f8:0b:ef:78:e7:e3:22:eb:af:6a ol_inv@dpbmdb2

Once you have generated a key pair, you must now install the public key on the server that you wish to log into. The public portion is stored in the file with the extension .pub in an ASCII encoding. Note: it is all one continuous line without line breaks.

Now you need to move that public key to the remote server paying close attention to file permissions. UNIX is very particular when it comes to file permissions. In order for the private key (resides on the source server ‘.ssh/id_rsa’ to be recognized there cannot be any permissions for group or other, just for user:

-rw------- 1 ol_inv whs 883 Aug 23 09:26 id_rsa

To enable public key authentication on a server, you need to append the public portion of the key to the/.ssh/authorized_keys file. This may be accomplished with the following command-line:

ssh dwebapp1 "umask 077; cat >> .ssh/authorized_keys" </.ssh/id_rsa.pub
^^^^^^^^ ^^^^^^^^^^^^
Remote server Source server

The restrictive umask is required because the server will refuse to read/.ssh/authorized_keys files which have loose permissions. Once the public key is installed on the server, you should now be able to authenticate using your private key

Test your keys:

ssh username@host
If you do not see your remote server’s splash page and you see the following page:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0777 for '/usr/local/ol_inv/.ssh/id_rsa' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
bad permissions: ignore key: /usr/local/ol_inv/.ssh/id_rsa
Enter passphrase for key '/usr/local/ol_inv/.ssh/id_rsa':

Then you need to go back and check the permissions on the source server where the private key resides: id_rsa


After you correct your permissions on that file:

chmod 700 id_rsa

Try again:

ssh remoteuser@remoteserver


Note: replace remoteuser with actual user name on remote server
replace remoteserver with actual remote server name
Reply With Quote
  #10  
Old 08-23-2007
Registered User
 

Join Date: Jun 2007
Posts: 15
ssh-keygen questions (not working) --> resolved

also if when trying to ssh into the remote server and you are prompted for that server's password then the keys are not set up correctly. When attempting to ssh into the server it should automatically give you the remote server's splash screen.

if you are simply prompted for a password then check the file permissions for authorized_keys on the remote server. Those permissions must be:

chmod 644
Reply With Quote
  #11  
Old 09-01-2008
Registered User
 

Join Date: Aug 2008
Posts: 3
Hi Tekline Can you pls help me in making this work? I'm facing the same problem as the server prompts for the password everytime.

Steps in Detail:
--------------
Source Machine: SRC_Machine
Remote Mahcine: RMT_Machine

I logged on to SRC_Machine
ssh -V
OpenSSH_3.9p1, OpenSSL 0.9.7a Feb 19 2003

and generated a Key as shown below..
ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/.ssh/id_rsa): /home/.ssh/id_rsa_test
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/.ssh/id_rsa_test.
Your public key has been saved in /home/.ssh/id_rsa_test.pub.
The key fingerprint is:
b6:74:7f:84:6f:21:68:fb:86:5c:2f:03:79:c9:ff:61

Modified the permision of the private key file to
chmod 600 id_rsa_test
-rwx------ 1 951 Sep 2 13:09 id_rsa_test

Then i did to appen the public key to Authorized Keys
ssh RMT_Machine "umask 077; cat >> .ssh/authorized_keys" < /home/.ssh/id_rsa_test.pub

chmod 700 id_rsa_test

Now while i do ssh username@RMT_Machine
it prompts me for the password.

Let me know if i'm missing any steps.
Reply With Quote
Google The UNIX and Linux Forums
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes




All times are GMT -7. The time now is 09:58 AM.


Powered by: vBulletin, Copyright ©2000 - 2006, Jelsoft Enterprises Limited.
The UNIX and Linux Forums Content Copyright ©1993-2008. All Rights Reserved.Ad Management by RedTyger Visit The Complex Event Processing Blog

Content Relevant URLs by vBSEO 3.2.0