跳过导航链接 | |
退出打印视图 | |
![]() |
Oracle Solaris 11 开发者安全性指南 Oracle Solaris 11 Information Library (简体中文) |
样例服务器端程序 gss-server 可以与上一章中介绍的 gss-client 结合使用。 gss-server 的基本用途是从 gssapi-client 接收和返回经过包装的消息并对其进行签名。
以下几节将提供有关 gss-server 工作方式的逐步说明。 由于 gss-server 是一个用于说明 GSSAPI 功能的样例程序,因此仅详细讨论该程序的相关部分。 这两个应用程序的完整源代码可在附录中找到,也可以从 Oracle 下载中心下载。 请参见 http://www.oracle.com/technetwork/indexes/downloads/sdlc-decommission-333274.html。
gss-structure 应用程序执行以下步骤:
解析命令行。
如果指定了机制,请将该机制的名称转换为内部格式。
获取调用者的凭证。
查看用户是否指定了要使用 inetd 守护进程进行连接。
与客户机建立连接。
从客户机接收数据。
对数据进行签名并返回数据。
释放名称空间并退出。
gss-server 在命令行中采用以下形式:
gss-server [-port port] [-verbose] [-inetd] [-once] [-logfile file] \ [-mech mechanism] service-name
port 是要侦听的端口号。 如果未指定任何端口,则程序使用端口 4444 作为缺省端口。
-verbose 会导致在运行 gss-server 时显示消息。
-inetd 表示程序应当使用 inetd 守护进程来侦听端口。-inetd 使用 stdin 和 stdout 连接到客户机。
-once 表示仅建立单实例连接。
mechanism 是要使用的安全机制的名称,如 Kerberos v5。 如果未指定任何机制,GSS-API 将使用缺省机制。
service-name 是客户机所请求的网络服务的名称,如 telnet、ftp 或登录服务。
典型的命令行可能如以下示例所示:
% gss-server -port 8080 -once -mech kerberos_v5 erebos.eng nfs "hello"