6.9.1. SSH 基础
警告 | |
---|---|
如果想要运行 OpenSSH 服务,” |
SSH 有两个认证协议。
表 6.14. SSH 认证协议和方式列表
SSH 协议 | SSH 方式 | 说明 |
---|---|---|
SSH-1 | “RSAAuthentication “ | 基于 RSA 身份秘钥的用户认证 |
同上 | “RhostsAuthentication “ | “.rhosts “ 基于主机的认证(不安全,禁用) |
同上 | “RhostsRSAAuthentication “ | “.rhosts “ 使用 RSA 主机秘钥的主机认证(禁用) |
同上 | “ChallengeResponseAuthentication “ | RSA 质疑-应答 认证 |
同上 | “PasswordAuthentication “ | 基于密码的认证 |
SSH-2 | “PubkeyAuthentication “ | 基于公钥的用户认证 |
同上 | “HostbasedAuthentication “ | “~/.rhosts “ or “/etc/hosts.equiv “ 使用客户端主机公钥的主机认证(禁用) |
同上 | “ChallengeResponseAuthentication “ | 质疑-应答 认证 |
同上 | “PasswordAuthentication “ | 基于密码的认证 |
小心 | |
---|---|
如果你使用一个非 Debian 的系统,请小心注意这些不同。 |
细节参见 “/usr/share/doc/ssh/README.Debian.gz
“, ssh(1), sshd(8), ssh-agent(1), and ssh-keygen(1).
下面是秘钥配置文件。
表 6.15. SSH 配置文件列表
配置文件 | 配置文件描述 |
---|---|
/etc/ssh/ssh_config | SSH 客户端默认, 参见 ssh_config(5) |
/etc/ssh/sshd_config | SSH 服务端默认, 参见 sshd_config(5) |
~/.ssh/authorized_keys | 该账户连接到这个服务器上的客户端使用的默认 SSH 公钥 |
~/.ssh/identity | 用户的 SSH-1 RSA 私钥 |
~/.ssh/id_rsa | 用户的 SSH-2 RSA 私钥 |
~/.ssh/id_dsa | 用户的 SSH-2 DSA 私钥 |
提示 | |
---|---|
参见 ssh-keygen(1), ssh-add(1) 和 ssh-agent(1) 来了解怎样使用 SSH 公钥和私钥。 |
提示 | |
---|---|
一定要通过连接测试来确认设置。有任何问题的连接,使用 “ |
提示 | |
---|---|
稍后可以使用 “ |
提示 | |
---|---|
你可以在 “ |
从客户端启动一个 ssh(1) 连接.
表 6.16. SSH 客户端启动例子列表
命令 | 说明 |
---|---|
ssh username@hostname.domain.ext | 使用默认模式连接 |
ssh -v username@hostname.domain.ext | 有详细信息的默认连接模式 |
ssh -1 username@hostname.domain.ext | 强制使用 SSH 1 版本连接 |
ssh -1 -o RSAAuthentication=no -l username hostname.domain.ext | SSH 1 版本,强制使用密码 |
ssh -o PreferredAuthentications=password -l username hostname.domain.ext | SSH 2 版本,强制使用密码 |
如果本地和远程主机,使用同样的用户名,你可以省略输入 “username@
“. 即使在本地和远程主机使用不同的用户名,你可以使用 “~/.ssh/config
“ 来省略输入用户名.对于 Debian Salsa 服务器,使用账户名 “foo-guest
“,你可以设置 “~/.ssh/config
“ 包含下面的内容。
Host salsa.debian.org people.debian.org
User foo-guest
对于用户来讲, ssh(1) 功能比telnet(1) 更加智能和安全. 不像 telnet
命令, ssh
命令不会在遇到 telnet
的退出字符(初始默认是 CTRL-])时停止.