scalable trust provisioning for intel® ssd - data …...scalable trust provisioning for software...

14
Revision 1.0 333992-001 Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document March 2016

Upload: others

Post on 24-Aug-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Revision 1.0333992-001

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

March 2016

Page 2: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

2 333992-001

Revision History

Revision Date Comments

1.0 March 1, 2016 Initial release (Intel Public).

Page 3: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 3

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

Contents

1.0 Executive Summary .................................................................................................. 5

2.0 Business Requirements ............................................................................................. 5

3.0 Trusted Computing as an Answer.............................................................................. 5

4.0 Provisioning Solution Overview................................................................................. 74.1 Functional Architecture ........................................................................................ 84.2 Technical Requirements....................................................................................... 9

5.0 Deploying the Intel® Platform Trust Enabler SDK.....................................................10

6.0 Configuring and Executing Intel® PTE ......................................................................11

7.0 System Support .......................................................................................................12

Page 4: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

4 333992-001

NOTE: This page intentionally left blank.

Page 5: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 5

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

1.0 Executive SummaryEnabling Trusted Compute Pool infrastructure usages, such as geographic fencing of workloads and infrastructure attestation, requires the setting of platform parameters close to the hardware. Specific BIOS settings such as the enablement of Intel® Virtualization Technology (Intel® VT-x and Intel® VT-d) and Intel® Trusted Execution Technology (Intel® TXT) need to be performed for every infrastructure host at least once during initial provisioning, and may require multiple boot cycles. This is a cumbersome process if done manually, often varying across server vendors. Therefore, this solution utilizes the Intel® Platform Trust Enabler (Intel® PTE) SDK integrated into an organization's IT infrastructure to automate this process, enabling bulk provisioning and unifying the process across multiple server vendors.

2.0 Business RequirementsVirtualization and cloud computing untie the close association of workloads and their underlying infrastructure. Workloads may, in general, be placed or relocated to any host in the infrastructure, thus relying on a split responsibility for the integrity of the software stack: the application owner is able to control the setup of the workload, while the infrastructure owner is responsible for any configuration in the lower layers. This distribution of security controls poses IT governance challenges when moving to the cloud, in particular in hybrid or public cloud scenarios. Addressing these governance challenges therefore becomes an important prerequisite for cloud service providers and IT departments looking to outsource workloads to cloud environments.

3.0 Trusted Computing as an AnswerThis aforementioned loss of security control can be partially offset by automated boot time integrity checks, such as those offered by Intel® TXT which represents a hardware root-of-trust for measurement.

Figure 1. Questions to Consider

Verify integrityof

infrastructure?

Trust where servers are

located?

Control where workloads are distributed?

Audit policy configuration of

their cloud?

Maintain strict administrative control over

your workloads?

As a Tenant, how do you:

Page 6: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

6 333992-001

After passing such checks during host boot time, a server is said to be trusted so that orchestration layers such as OpenStack* or vCenter*/vCloud* can utilize this attribute when automating workload scheduling.

However, setting up a server system to be launched in this trusted manner requires the fulfillment of the following prerequisites:

1. A Trusted Platform Module (TPM) must be installed on the host's main board.

2. The correct firmware version must be installed.

Figure 2. Intel® TXT Work Principle

Figure 3. Usage Models Enabled by Intel® TXT

InternetInternet

Trusted Launch Verified platform integrity reduces malware threat

1

Trusted Pools Control VM migration based on platform trust to better protect data

2

Compliance Hardware support for compliance reporting enhances auditability of cloud environment

3

Page 7: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 7

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

3. The TPM must be activated in the BIOS.

4. Intel® Virtualization Technology and Intel® Trusted Execution Technology need to be switched on in the BIOS.

While item 1 must be performed when a server system is physically configured (for example, during assembly on the factory floor), items 2 through 4 are typically done via software.

Unfortunately, for these tasks to occur, most server system types must go through a number of reboot cycles (see Table 1), making this process slow and error prone if done manually.

4.0 Provisioning Solution OverviewIn the following chapters we describe a solution to this setup and configuration challenge by a limited addition to data center and server landscape that uses industry standard best practices to automate items 2 through 4 across a range of machines and vendor types. This Intel® Platform Trust Enabler (Intel® PTE) is provided as a Software Development Kit (SDK) for customization to every data center customer's environment.

It is based on utilizing the PXE boot framework that exists in many IT infrastructures, and is aimed at automating the TPM provisioning, the activation of the Intel® TXT technology, and the provisioning of the asset tag information.

Intel® PTE 2.0 is a free software framework that has the flexibility to support multiple OEM's server types. It does so by relying on the vendor-provided host-based provisioning tools that will get called from a PXE-booted provisioning OS that is part of the Intel® PTE solution. This provisioning OS also coordinates provisioning steps with a centralized provisioning server and orchestrates the steps relevant for the local to-be-configured machine.

For this to work, Intel® PTE must rely on the following prerequisites:

• A trusted platform module must be installed and working. That is, its hardware provisioning must be done in advance.

• The machines that support Intel® TXT must be known in advance. Intel® PTE does not have the general capacity of detecting these capabilities.

In addition, Intel® PTE only takes care of the necessary firmware settings, but stops short of configuring the use of Intel® TXT in bare-metal installed OSs and hypervisors.

Table 1. Reboots for Asset Tag Provisioning

OEM

Number of Reboots for Asset TagPROVISION

Number of Reboots for Asset TagRE-PROVISION

ESX TA (Xen/KVM) ESX Xen/KVM

Cisco 5 2 5 2

Dell 5 2 5 2

Hitachi

HP Blade 5 2 5 2

IBM 5 2 5 2

Intel 5 2 5 2

Quanta

Supermicro 7 2 7 2

VCE

Page 8: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

8 333992-001

4.1 Functional Architecture

Servers in an infrastructure that are either re-imaged or re-purposed multiple times usually make use of a so-called PXE boot infrastructure. PXE is a standardized combination of DHCP and BOOTP/TFTP protocols. Central to this is a PXE server machine that acts as a DHCP server, issuing IP network addresses to servers requesting these during their network boot. In addition, it also hands out the pathnames to bootable image files to each individual host requesting this. When using this mechanism, an IT organization can ensure that individual boot images are delivered to machines based on their individual MAC Addresses, independent of the setup and configuration status of these machines.

The solution at hand utilizes boot images that are set up such that they take the server vendor's proprietary system configuration tool and orchestrate the different steps of the trust setup and configuration process. The image does so by connecting back to a new element in the network infrastructure, the Intel® Platform Trust Enabler server. This customizable virtual machine delivers bootable images that make use of each server vendor's proprietary system configuration tool, staging TPM enablement, and Intel® TXT as well as VT settings on each individual host. Coordination with the central Intel® PTE server occurs through a dedicated orchestration framework, using a client application in the target server's image and a central server application in the Intel® PTE machine. Hereby, a consistent state of provisioning is centrally maintained, even across the limited number of reboots that this configuration process as a whole requires.

During the course of this process, Intel® PTE additionally relies on well-known techniques such as IPMI and SSH to exercise tasks in power management and remote control.

In addition to the aforementioned settings, Intel® PTE can also automate the setting of a geographic tag within the TPM, which in turn can serve as an additional attribute in the trusted workload scheduling stage of cloud environments.

The activation flow that Intel® PTE executes for every hosts is shown in Figure 5.

Figure 4. High-Level Functional Architecture

Intel PTE Agent

BIOS Tool (per OEM)

Geotag Prov. Agent

Agent ImageParameters from PXE Server (URLs and SSL certificates of

Intel PTE Server, TPM Endorsement Server, Chef

Server)

Compute Node

BIOS

IPMI

PXE

HTTP

HTTP

PXE Server

Tag ProvisioningServer (Intel® CIT Server)

Intel® TXT Discovery

Intel PTE ServerIPMI

PXE

HTTP

HTTP

Management Service

HTTP Admin Desktop

SSH

SSH

Download & Run

Optional

HTTP

Page 9: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 9

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

Intel® PTE currently offers to automate the provisioning of single hosts as well as a list of hosts. Required data can be put in interactively via browser-based masks from an administrative station, or can be uploaded in bulk via a spreadsheet into its main portal, again from an administrative workplace or from an API.

4.2 Technical RequirementsSince Intel® PTE 2.0 can be downloaded as a single-file installer binary, the following prerequisites must be met to set up this functionality for a given server vendor's machines:

• Ubuntu 12.04 VM to install PTE2.0 binary file.

• Appropriate OEM system configuration tool(s).

• An existing corporate PXE Server Environment.

• To be configured Intel® TXT-capable machines that can be connected to via a baseboard management controller (BMC) and that should be in a powered-off state before beginning this process.

Figure 5. Intel® PTE Activation Flow

Is TPM enabled?

Is TXT enabled?

Should provision asset tag?

Is owner password known?

Write tag …. Did we take ownership?

noQueue: Enable TPM

noQueue: Enable TXT

Is queue empty?no

Run commands in queue (OEM-dependent if only first one or all simultaneously), reboot to PXE image

noIs TPM owned?

noReady for target OS; change boot order and rreboot to target

yes

yes

yesStatus from Ignition server

yes

Is TPM owned?no

Take ownership

yes

noClear TPM,Reboot to PXE image

(assumes OEM requires reboot… we could check to see if we can take ownership right away to avoid reboot… OEM-specific)

yes

yes

Clear TPM, reboot to PXE image

Get password from Mt Wilson

yes

Clear TPM,Post to Ignition server: Turn asset tag provisioning offReboot to PXE image

noReady for target OS; change boot order and rreboot to target

Reboot to PXE image:

Is TXT & TPM enabled?Yes: reboot to target OSNo: reboot to PXE image

Reboot to PXE image:Are there other actions to take besides enabling TXT/TPM? Yes: reboot to PXE imageNo: reboot to target OS

Page 10: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

10 333992-001

5.0 Deploying the Intel® Platform Trust Enabler SDKIntel® PTE 2.0 comes as a 190 MB binary file that must be executed on the Ubuntu virtual machine. During the installation of the Intel® PTE server, the administrative user must choose one of the following two deployment models:

• Most commonly, in a “Separate Services” model, the Intel® PTE server is the only application installed on a particular VM and handles Node Management only (that is, it orchestrates the various steps to be performed). For that it utilizes the corporate PXE server to provide the appropriate image, and utilizes the corporate attestation services (for example, Intel® Cloud Integrity Technology) to execute TPM Endorsement and the provisioning of the Asset Tag. The installation of either of these two (PXE server and Attestation Service) are not in the scope this document.

• In smaller environments, the “All-in-one” model can be used, and the Intel® PTE server is installed on the same OS instance alongside the corporate PXE server and an attestation service. All functions of the provisioning process are combined on a single machine:

An example implementation of the “Separate Services” deployment architecture for hosts of three different vendors is shown in Figure 6:

Figure 6. Separate Services Deployment Architecture

ESXi MgmtServer/Host

OS&BMC NETWORK

PXE NETWORK

TXT TARGET NODE 02

TXT TARGET NODE 03

TXT TARGET NODE 04

iPXESERVER

PTE

VM

P

X

E

I

M

G

P

X

E

I

M

G

P

X

E

I

M

G

Copy PXE image to PXE server

Note: Intel® CIT is required only forTag provisioning.

Intel Cloud Integrity Technology Attestation Server

P

X

E

I

M

G

Page 11: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 11

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

6.0 Configuring and Executing Intel® PTETo prepare the provisioning infrastructure for each type of to-be-activated host, the following steps must be taken:

Once the corresponding PXE boot image for that particular server type has been prepared and uploaded to the PXE server, the process of provisioning Intel® TXT on one or more of these types of hosts can be triggered:

Figure 7. Intel® PTE Preparation

Figure 8. Intel® TXT Provisioning

User needs to download the OEM tools and copy to PTE tool

path*

Download & Execute PTE2.0 Bin in Ubuntu 12.04 VM

Copy PXE Image “Casper” to PXE Server

Management Host

Admin

path* = /opt/pte/software/oem/dell/2.0/tools/

Create PXE image

Upload OEM Syscfg tools to pte path*

PXE server

PXEImg

PXEImg

Add the BMC address of Target Node

Connect to Portal

Select the Actions to happen

Admin

Check the Progress and status icon and refer Logs for more details

Page 12: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

12 333992-001

7.0 System SupportCurrently, Intel® PTE can be used with server platforms of the following vendors:

Table 2. Vendor Support

OEM TXT/TPM Activation

ATAG Provisioning Tools Required Licenses Comments

Dell Yes Yes DTK [Dell Deployment Tool Kit] Free Validated on Romley Platform

HP Yes Yes CONREP Free Validated on Romley Platform

Intel PCSD Yes Yes SYSCFG [sysconfig] Free Validated on Romley Platform

Quanta Yes Yes AFULNX Free Validated on Romley Platform

Supermicro Yes Yes SUM [Supermicro update Manager]

Paid license per node for SUM Validated on Romley Platform

Page 13: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

333992-001 13

Scalable Trust Provisioning for Software Defined ArchitecturesSolution Architecture Document

NOTE: This page intentionally left blank.

Page 14: Scalable Trust Provisioning for Intel® SSD - Data …...Scalable Trust Provisioning for Software Defined Architectures Solution Architecture Document 2 333992-001 Revision History

14 333992-001

LEGAL

No license (express or implied, by estoppel or otherwise) to any intellectual property rights is granted by this document.

Intel disclaims all express and implied warranties, including without limitation, the implied warranties of merchantability, fitness for a particular purpose, and non-infringement, as well as any warranty arising from course of performance, course of dealing, or usage in trade.

This document contains information on products, services and/or processes in development. All information provided here is subject to change without notice. Contact your Intel representative to obtain the latest forecast, schedule, specifications and roadmaps.

The products and services described may contain defects or errors which may cause deviations from published specifications.

Copies of documents which have an order number and are referenced in this document may be obtained by calling 1-800-548-4725 or by visiting www.intel.com/design/literature.htm.

Intel and the Intel logo are trademarks of Intel Corporation in the U.S. and/or other countries.

* Other names and brands may be claimed as the property of others.

© 2016 Intel Corporation.