20.16.8. 智能卡设备


可以通过智能卡元素向客户机虚拟机提供虚拟 智能卡 设备。主机机器上的 USB 智能卡读取器设备无法在具有简单设备透传的 guest 上使用,因为它不能同时提供给主机和客户机,并在从客户机中删除主机计算机时锁定主机计算机。因此,一些虚拟机监控程序提供特殊的虚拟设备,它可向客户机虚拟机提供智能卡接口,具有几种模式来描述如何从主机或第三方智能卡供应商创建的频道获取凭证。要通过字符设备设置 USB 设备重定向的参数,请编辑域 XML 的以下部分:

图 20.34. devices - 智能卡设备


  ...
  <devices>
    <smartcard mode='host'/>
    <smartcard mode='host-certificates'>
      <certificate>cert1</certificate>
      <certificate>cert2</certificate>
      <certificate>cert3</certificate>
      <database>/etc/pki/nssdb/</database>
    </smartcard>
    <smartcard mode='passthrough' type='tcp'>
      <source mode='bind' host='127.0.0.1' service='2001'/>
      <protocol type='raw'/>
      <address type='ccid' controller='0' slot='0'/>
    </smartcard>
    <smartcard mode='passthrough' type='spicevmc'/>
  </devices>
  ...
智能卡 元素具有强制属性 模式。支持以下模式;在各个模式下,客户机虚拟机在其 USB 总线上看到设备,其行为类似于物理 USB CCID(Chip/Smart Card Interface Device)卡。
模式属性如下:
表 20.16. SmartCard 模式元素
参数描述
mode='host'在这个模式中,管理程序通过 NSS 将客户机虚拟机的所有直接访问请求转发到主机物理机器的智能卡。不需要其他属性或子元素。请参阅以下关于使用可选 地址 子元素的信息。
mode='host-certificates'这个模式允许您提供位于主机物理机器的数据库中的三个 NSS 证书名称,而不需要插入到主机物理机器中的智能卡。这些证书可以使用命令 certutil -d /etc/pki/nssdb -x -t CT,CT,CT -S -s CN=cert1 -n cert1,并且生成的三个证书名称必须作为三个 证书子元素 的内容提供。额外的子元素 数据库 可以指定到备用目录的绝对路径(在创建证书时与 certutil 命令的 -d 选项匹配);如果不存在,则默认为 /etc/pki/nssdb
mode='passthrough'此模式允许您通过二级字符设备将所有请求传输到第三方提供程序(而后者又与智能卡或使用三个证书文件)进行传输,而不是让虚拟机监控程序直接与主机物理计算机通信。在这个模式中,需要一个额外的属性 类型,与受支持的串行设备类型之一匹配,以描述隧道的主机物理机器侧; type='tcp'type='spicevmc' (它使用 SPICE 图形设备的智能卡频道)。此外,可以根据给定类型需要其他子元素(如 ),但不需要 目标 子元素(因为字符设备的使用者是虚拟机监控程序本身,而不是虚拟客户机中可见的设备)。
每个模式支持可选的子元素 地址,它微调智能卡与 ccid 总线控制器之间的相关性(推荐至 第 20.16.3 节 “设备地址”)。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.