27

I have recently switched from Gnome to Xfce on Ubuntu 9.04.

In Gnome, the first time I entered the passphrase, it prompted me to save the passphrase.

In Xfce however, I am prompted for the passphrase every time I connect.

Is there a simple way to save the passphrase in Xfce?

Alasdair
  • 553
  • 1
  • 8
  • 14
  • wfaulk's answer doesn't do what I originally asked for, but it's good enough so I've accepted it. With ssh-add, I only need to enter my passphrase once after I log in. – Alasdair Oct 09 '09 at 11:42

6 Answers6

47

If you've installed Seahorse (sudo apt-get install seahorse), add export $(gnome-keyring-daemon --daemonize --start) to your .bashrc and you'll get the same SSH key behaviour as in vanilla Ubuntu.

Dan
  • 939
  • 9
  • 15
8

I think this is what you're looking for:

Setup of SSH agent in Xubuntu 11.10 to get password-less authentication with use of public key | Hnygard.no

If you have not already done so, set up your private and public key (See Githubs description about SSH key half way through Set Up Git). It is important that you add a passphrase to your private key.

Install the package ssh-askpass:

sudo apt-get install ssh-askpass

Add «/usr/bin/ssh-add» to your start up. Go to Settings – Settings manager – Session and startup. Go to Application Autostart and add an item that runs the command «/usr/bin/ssh-add«:

On next login you’ll get the following dialog asking for your passphrase. After entering it, you can open a terminal or use sftp in the file manager without typing a password.

David Frascone
  • 116
  • 1
  • 4
  • thx, this works for me! – Produnis Apr 05 '14 at 20:44
  • No luck for me. Do you understand how `ssh-add` invokes `ssh-askpass`? That's not clear to me. – Air May 24 '14 at 15:14
  • This is by far the best method I've found for working with ssh keys on XFCE. Easier than using the terminal and a lot less bloated than installing the entire gnome keyring system. Thanks! – Marlies Jul 15 '14 at 10:01
6

Use ssh-agent and ssh-add?

wfaulk
  • 6,200
  • 5
  • 34
  • 45
  • 3
    ssh-add is a good suggestion. However I still have to run ssh-add and enter my passphrase once per session. That's much better than before, but not quite as convenient as when I was running Gnome. – Alasdair Oct 08 '09 at 14:01
  • Gnome saves your private key password on disk somewhere? Ugh. Or maybe I don't know what you mean by "session". – wfaulk Oct 08 '09 at 15:41
  • 1
    By session I mean each time I log in. Yes, gnome-keyring stores the passphrase on disk, but it is encrypted using the login password. – Alasdair Oct 08 '09 at 16:30
  • Right, must run ssh-add every time. Really annoying. – faceclean Oct 04 '11 at 21:57
  • Yes, Gnome automatically ssh-add's all private keys in ~/.ssh, but Xfce does not. – graywh Feb 14 '12 at 15:32
  • just add ``/usr/bin/ssh-add`` to your startup-items in xfce-settings – Produnis Apr 05 '14 at 20:45
4

I've also recently switched to xfce (i3 standalone to xfce+i3) and had the same issue.

In i3 I started /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 and put export $(gnome-keyring-daemon -s) into .bashrc, but in xfce that only worked for bash terminals, not for other applications like virt-manager.

But it turns out there is a simple gui setting for that:

In "Session and Startup":

  1. in the tab "Application Autostart" enable "SSH Key Agent (GNOME Keyring: SSH Agent)" (And if you want the other 2 gnome keyring entries)
  2. in the tab "Advanced" under Compatibility enable "Launch GNOME services on startup"

xfce -> Session and Startup -> Application Autostart

xfce -> Session and Startup -> Advanced

Zauberfisch
  • 161
  • 6
3

ssh application examines $SSH_ASKPASS environment variable (man ssh) and executes that application in order to get passphrase. You should switch this app to another one, that's capable of remembering: e.g. the one GNOME uses originally.

kolypto
  • 3,041
  • 6
  • 28
  • 35
2

Just enable Gnome Services in the "Session and Startup" configuration.

Settings->Session and Startup->Advanced->Launch GNOME services on startup

bastian
  • 121
  • 2