SSH-ADD(1)

NAME
ssh-add - 向认证代理添加 RSA 或 DSA 身份数据

总览 (SYNOPSIS)
ssh-add [-lLdDxXc] [-t life] [file ...] ssh-add -s reader ssh-add -e reader

描述 (DESCRIPTION)
ssh-add 向认证代理 (authentication agent) , ssh-agent(1) , 添加 RSA 或 DSA 身份识别数据. 无参数运行该程序时, 它将 $HOME/.ssh/id_rsa, $HOME/.ssh/id_dsa 和 $HOME/.ssh/identity 文件的内容送往认证代理. 可以在命令行上指定不同的文件名. 如果文件需要用密语(passphrase)访问, ssh-add 会提示用户输入, 然后从用户的 tty 终端读取密语. 如果给出多个身份文件, ssh-add 将重试最后一条密语.

要使 ssh-add 正常工作, 必须运行认证代理, 而且是当前进程的祖先.

可用的选项有:

-l  列出认证代理目前代表的身份的指纹.

-L  列出认证代理目前代表的身份的公钥参数.

-d  和添加身份相反, 从认证代理上删除这个身份数据.

-D  从认证代理上删除所有身份数据.

-x  用口令锁住代理.

-X  把代理解锁.

-t life
    向代理添加身份的时候设置最大生命周期. 生命周期以秒为单位, 也可以用 sshd_config(5) 中规定的时间格式.

-c  身份在认证前先要被确认. 确认工作由后面提到的 SSH_ASKPASS 程序进行. 确认成功后, SSH_ASKPASS 返回状态字 0 给调用者, 而不用传递文本数据.

-s reader
    添加智能卡 reader 里的密钥.

-e reader
    删除智能卡 reader 里的密钥.

文件 (FILES)

$HOME/.ssh/identity
    内含用户的协议第一版的 RAS 身份数据.

$HOME/.ssh/id_dsa
    内含用户的协议第二版的 DSA 身份数据.

$HOME/.ssh/id_rsa
    内含用户的协议第二版的 RAS 身份数据.

身份文件只许它的用户读取, 其他用户不允许访问. 注意, 如果身份文件 能够被其他用户访问, ssh-add 将忽略这个文件.

环境 (ENVIRONMENT)

DISPLAY 和 SSH_ASKPASS
    如果 ssh-add 需要密语, 当它在终端上运行的时候, 它会从当前终端上读取这个密语. 如果 ssh-add 没有和终端关联, 但是设置了 DISPLAY 和 SSH_ASKPASS 环境变量, 它就执行 SSH_ASKPASS 指定的程序, 打开一个 X11 窗口读取密语. 从 .Xsession 或类似的描述文件调用 ssh-add 时, 这个功能非常有用. (注意, 某些机器上可能先要把输入重定向到 /dev/null 才能工作.)

SSH_AUTH_SOCK
    标明一个 UNIX 域 socket 的路径, 用于和代理通信.

诊断 (DIAGNOSTICS)
成功执行的返回状态为 0, 命令失败则返回 1, 如果 ssh-add 无法联系到认证代理就返回 2.

作者 (AUTHORS)
OpenSSH 源自最初 Tatu Ylonen 发表的自由 ssh 1.2.12. Aaron Campbell, Bob Beck, Markus Friedl, Niels Provos, Theo de Raadt 和 Dug Song 消除了许多 BUGS, 增加新的特征, 从而创建了 OpenSSH. Markus Friedl 贡献了对 SSH 协议1.5版和2.0版的支持.

另见 (SEE ALSO)
ssh(1), ssh-agent(1), ssh-keygen(1), sshd(8)

TRANSBY
LinuxForum.Net CMPP 中文手册页计划 http://cmpp.linuxforum.net

* Sun Feb 8 2004 徐明 <xuming@users.sourceforge.net>
- 初始版本