my xfce4 dotfiles
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

106 lines
2.9 KiB

3 years ago
  1. # ssh-agent plugin
  2. This plugin starts automatically `ssh-agent` to set up and load whichever
  3. credentials you want for ssh connections.
  4. To enable it, add `ssh-agent` to your plugins:
  5. ```zsh
  6. plugins=(... ssh-agent)
  7. ```
  8. ## Settings
  9. **IMPORTANT: put these settings _before_ the line that sources oh-my-zsh**
  10. ### `agent-forwarding`
  11. To enable **agent forwarding support** add the following to your zshrc file:
  12. ```zsh
  13. zstyle :omz:plugins:ssh-agent agent-forwarding yes
  14. ```
  15. ### `helper`
  16. To set an **external helper** to ask for the passwords and possibly store
  17. them in the system keychain use the `helper` style. For example:
  18. ```zsh
  19. zstyle :omz:plugins:ssh-agent helper ksshaskpass
  20. ```
  21. ### `identities`
  22. To **load multiple identities** use the `identities` style (**this has no effect
  23. if the `lazy` setting is enabled**). For example:
  24. ```zsh
  25. zstyle :omz:plugins:ssh-agent identities id_rsa id_rsa2 id_github
  26. ```
  27. **NOTE:** the identities may be an absolute path if they are somewhere other than
  28. `~/.ssh`. For example:
  29. ```zsh
  30. zstyle :omz:plugins:ssh-agent identities ~/.config/ssh/id_rsa ~/.config/ssh/id_rsa2 ~/.config/ssh/id_github
  31. # which can be simplified to
  32. zstyle :omz:plugins:ssh-agent identities ~/.config/ssh/{id_rsa,id_rsa2,id_github}
  33. ```
  34. ### `lazy`
  35. To **NOT load any identities on start** use the `lazy` setting. This is particularly
  36. useful when combined with the `AddKeysToAgent` setting (available since OpenSSH 7.2),
  37. since it allows to enter the password only on first use. _NOTE: you can know your
  38. OpenSSH version with `ssh -V`._
  39. ```zsh
  40. zstyle :omz:plugins:ssh-agent lazy yes
  41. ```
  42. You can enable `AddKeysToAgent` by passing `-o AddKeysToAgent=yes` to the `ssh` command,
  43. or by adding `AddKeysToAgent yes` to your `~/.ssh/config` file [1].
  44. See the [OpenSSH 7.2 Release Notes](http://www.openssh.com/txt/release-7.2).
  45. ### `lifetime`
  46. To **set the maximum lifetime of the identities**, use the `lifetime` style.
  47. The lifetime may be specified in seconds or as described in sshd_config(5)
  48. (see _TIME FORMATS_). If left unspecified, the default lifetime is forever.
  49. ```zsh
  50. zstyle :omz:plugins:ssh-agent lifetime 4h
  51. ```
  52. ### `quiet`
  53. To silence the plugin, use the following setting:
  54. ```zsh
  55. zstyle :omz:plugins:ssh-agent quiet yes
  56. ```
  57. ### `ssh-add-args`
  58. To **pass arguments to the `ssh-add` command** that adds the identities on startup,
  59. use the `ssh-add-args` setting. You can pass multiple arguments separated by spaces:
  60. ```zsh
  61. zstyle :omz:plugins:ssh-agent ssh-add-args -K -c -a /run/user/1000/ssh-auth
  62. ```
  63. These will then be passed the the `ssh-add` call as if written directly. The example
  64. above will turn into:
  65. ```zsh
  66. ssh-add -K -c -a /run/user/1000/ssh-auth <identities>
  67. ```
  68. For valid `ssh-add` arguments run `ssh-add --help` or `man ssh-add`.
  69. ## Credits
  70. Based on code from Joseph M. Reagle: https://www.cygwin.com/ml/cygwin/2001-06/msg00537.html
  71. Agent-forwarding support based on ideas from Florent Thoumie and Jonas Pfenniger