[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ssh-agent, keychain, xsession bash_profile scripting



On Fri, 15 Jan 2010, Adam Hardy wrote:

> I've been chasing my tail trying to work this one out following different
> examples off the web, but can't sort it out and keep getting the old
>
> "Could not open a connection to your authentication agent."
>
> from ssh-add, and nothing but inaction from keychain.
>
> I know everything has to run as a child of ssh-agent to gain access to its
> envvars, but I don't how to achieve this.
>
> keychain id_rsa in my .bash_profile doesn't work, I still have to give ssh my
> password for the private key when I use ssh.
>
> I guess I should be setting up the envvars in my bash env somehow when getting
> them via 'ssh-agent -s' but I don't know the syntax to do this.
>
> I always boot into a command line and then run startx when I need it, and I
> think herein lies the problem - although I can't get it to work on the command
> line either with keychain or ssh-add.
>
> Thanks
> Adam


Hi Adam,

from the command line you can run :

ssh-agent bash
#that starts your agent for that shell, you will need to run that for each
shell you want to have access to your keys
ssh-add -i /path/to/your/key


For X, in /etc/X11/Xsession.options, check and make sure you have
use-ssh-agent in there.  That should automatically start your ssh-agent for
your X session.  Then from a term you can run something like this:
#!/bin/sh

if ! ps -P $SSH_AGENT_PID ; then
	echo " need to run ssh-agent"
	exit 0
	fi

if ssh-add -l| egrep -i "dsa|rsa" ; then
	echo "keys there"
	else
	echo "need to add .keys"
	ssh-add /path/to/id_dsa
	fi


-- 
8 out of 10 Owners who Expressed a Preference said Their Cats Preferred Techno.


Reply to: