手册页部分 1: 用户命令

退出打印视图

更新时间: 2014 年 7 月
 
 

ssh-add(1)

名称

ssh-add - 将 RSA 或 DSA 标识添加到验证代理

用法概要

ssh-add [-lLdDxX] [-t life] [ file ]...

描述

ssh-add 实用程序将 RSA 或 DSA 标识添加到验证代理 ssh-agent(1)。如果在不带参数的情况下运行,它将尝试添加存在的所有文件($HOME/.ssh/identity (RSA v1)、$HOME/.ssh/id_rsa (RSA v2) 和 $HOME/.ssh/id_dsa (DSA v2))。如果存在多个私钥,在重新提示输入不同的口令短语之前,将会尝试使用相同的口令短语解密各个私钥。口令短语是从用户的 tty 中读取的,或通过运行在 SSH_ASKPASS 中定义的程序来读取的(请参见下文)。

验证代理必须正在运行。

选项

支持以下选项:

–d

此选项会从代理中删除标识,而不是添加标识。

–D

从代理中删除所有标识。

–l

列出代理当前提供的所有标识的指纹。

–L

列出代理当前提供的所有标识的公钥参数。

–t life

将标识添加到代理时设置最长生命周期。可以以秒为单位指定生命周期,也可以按 sshd(1M) 中指定的时间格式指定生命周期。

–x

使用口令锁定代理。

–X

解除锁定代理。

环境变量

DISPLAY
SSH_ASKPASS

如果 ssh-add 需要一个口令短语,当在终端中运行时,它将通过当前终端读取口令短语。如果 ssh-add 没有与之关联的终端,但设置了 DISPLAY 和 SSH_ASKPASS,它将执行 SSH_ASKPASS 指定的程序并打开一个 X11 窗口来读取口令短语。从 .Xsession 或相关脚本调用 ssh-add 时,这尤其有用。系统附带了 /usr/lib/ssh/ssh-askpass,这是 SSH_ASKPASS。 的缺省值

SSH_AUTH_SOCK

标识用于与代理进行通信的 unix 域套接字的路径。

退出状态

将返回以下退出值:

0

成功完成。

1

出现错误。

文件

除了用户外,其他任何人均应无法读取这些文件。请注意,如果某个文件可由其他人访问,则 ssh-add 会忽略该文件。可以在生成密钥时指定口令短语,该口令短语用于加密此文件的私有部分。

如果这些文件存储在网络文件系统上,则假定文件自身所提供的保护或网络文件系统的传输层可为站点策略提供充分的保护。如果不是这样,则建议将密钥文件存储在可移除介质上或在本地存储在相关主机上。

DSA 和 RSA 密钥文件的建议名称:

$HOME/.ssh/identity

包含协议版本 1 中用户的 RSA 验证标识。

$HOME/.ssh/identity.pub

包含协议版本 1 中用户的 RSA 验证标识的公共部分。

$HOME/.ssh/id_dsa

包含用户的私有 DSA 验证标识。

$HOME/.ssh/id_dsa.pub

包含用户的 DSA 验证标识的公共部分。

$HOME/.ssh/id_rsa

包含用户的私有 RSA 验证标识。

$HOME/.ssh/id_rsa.pub

包含用户的 RSA 验证标识的公共部分。

/usr/lib/ssh/ssh-askpass

包含 SSH_ASKPASS 的缺省值。

属性

有关下列属性的说明,请参见 attributes(5)

属性类型
属性值
可用性
network/ssh
接口稳定性
Committed(已确定)

另请参见

ssh(1)ssh-agent(1)ssh-keygen(1)sshd(1M)attributes(5)