10. Service Request (服务请求)
10. Service Request (服务请求)
密钥交换完成后, 客户端请求服务. 服务由名称标识. 名称格式及定义新名称的程序见 [SSH-ARCH] 与 [SSH-NUMBERS].
当前已保留以下名称:
ssh-userauth
ssh-connection
服务名称适用与算法名称类似的本地命名策略. 本地服务应使用 "servicename@domain" 形式的 PRIVATE USE 语法.
byte SSH_MSG_SERVICE_REQUEST
string service name
若服务器拒绝服务请求, 应该发送适当的 SSH_MSG_DISCONNECT 报文, 并必须断开连接.
服务启动时, 可以访问密钥交换期间生成的会话标识符.
若服务器支持该服务 (并允许客户端使用), 必须以下列内容响应:
byte SSH_MSG_SERVICE_ACCEPT
string service name
服务使用的报文编号应位于为其保留的区间 (见 [SSH-ARCH] 与 [SSH-NUMBERS]). 传输层继续处理其自身报文.
注意, 在使用隐式服务器认证 (implicit server authentication) 的密钥交换之后, 客户端必须等待对其服务请求报文的响应, 然后才能发送任何进一步数据.