Skip to content

Commit 6abbaf4

Browse files
raghav19teknoll
authored andcommitted
V4.0/pg fsws containers
1 parent 155e4a9 commit 6abbaf4

8 files changed

+258
-175
lines changed

product-guides/Foundational & Workload Security.md

+223-138
Large diffs are not rendered by default.

product-guides/Images/hvs-db.jpg

19.5 KB
Loading
13.2 KB
Loading
26.3 KB
Loading
18.2 KB
Loading
19.2 KB
Loading

quick-start-guides/Foundational & Workload Security - Containerization.md

+9-19
Original file line numberDiff line numberDiff line change
@@ -380,33 +380,23 @@ systemctl restart docker
380380
* On each worker node with `TXT/BTG` enabled and registered to K8s control-plane, the following pre-req needs to be done on `RHEL-8.3`/`Ubuntu-18.04` systems
381381

382382
* Foundational Security
383-
383+
384+
* `Tboot-1.10.1` or later to be installed for non `SUEFI` servers. [Tboot installation Details](https://github.com/intel-secl/docs/blob/master/product-guides/Foundational%20%26%20Workload%20Security.md#tboot-installation)
385+
384386
* Only for `Ubuntu-18.04`, run the following commands
385-
387+
386388
```shell
387389
$ modprobe msr
388390
```
391+
389392
* Workload Security
390-
* Container Confidentiality with Docker runtime
391-
* Copy `container-runtime` directory to each of the `TXT/BTG` enabled physical servers
392-
393-
* Run the `install-prereqs-docker.sh` script on the physical servers from `container-runtime`
394-
395-
> **Note:** `container-runtime` scripts need to be run on `TXT/BTG/SUEFI` enabled services
396-
397-
* Reboot the server
398-
399-
* Only for `Ubuntu-18.04`, run the following command
400-
401-
```shell
402-
$ modprobe msr
403-
```
404-
405393
* Container Confidentiality with CRIO runtime
406394

407-
* Copy `container-runtime` directory to each of the `TXT/BTG` enabled physical servers
395+
* `Tboot-1.10.1` or later to be installed for non `SUEFI` servers. [Tboot installation Details](https://github.com/intel-secl/docs/blob/master/product-guides/Foundational%20%26%20Workload%20Security.md#tboot-installation)
396+
397+
* Copy `container-runtime` directory to each of the physical servers
408398

409-
* Run the `install-prereqs-crio.sh` script on the physical servers from `container-runtime`
399+
* Run the `install-prereqs-crio.sh` script on the physical servers from `container-runtime`
410400

411401
> **Note:** `container-runtime` scripts need to be run on `TXT/BTG/SUEFI` enabled services
412402

quick-start-guides/Foundational & Workload Security.md

+26-18
Original file line numberDiff line numberDiff line change
@@ -127,12 +127,15 @@ The below steps needs to be carried out on the Build and Deployment VM
127127
rm -rf $tmpdir
128128
```
129129

130-
* Extract Install `go` version > `go1.13` & <= `go1.14.4` from `https://golang.org/dl/`
131-
and set `GOROOT` & `PATH`
132-
133-
```shell
134-
export GOROOT=<path_to_go>
130+
* Golang installation
131+
132+
```shell
133+
wget https://dl.google.com/go/go1.14.4.linux-amd64.tar.gz
134+
tar -xzf go1.14.4.linux-amd64.tar.gz
135+
sudo mv go /usr/local
136+
export GOROOT=/usr/local/go
135137
export PATH=$GOROOT/bin:$PATH
138+
rm -rf go1.14.4.linux-amd64.tar.gz
136139
```
137140

138141
### Building
@@ -429,43 +432,46 @@ ansible-playbook <playbook-name> \
429432

430433
### Additional Examples & Tips
431434

432-
#### TPM is already owned
435+
#### TBoot Installation
433436

434-
If the Trusted Platform Module(TPM) is already owned, the owner secret(SRK) can be provided directly during runtime in the playbook:
437+
Tboot needs to be built by the user from tboot source and the `tboot.gz` & `tboot-syms` files needs to be copied under the `binaries` folder. The supported version of Tboot as of 4.0 release is `tboot-1.10.1`.The options must then be provided during runtime in the playbook:
435438

436439
```shell
437440
ansible-playbook <playbook-name> \
438441
--extra-vars setup=<setup var from supported usecases> \
439442
--extra-vars binaries_path=<path where built binaries are copied to> \
440-
--extra-vars tpm_secret=<tpm owner secret>
443+
--extra-vars tboot_gz_file=<path where built binaries are copied to>/tboot.gz
444+
--extra-vars tboot_syms_file=<path where built binaries are copied to>/tboot-syms
441445
```
442-
or
443446

444-
Update the following vars in `vars/main.yml`
447+
or
448+
449+
Update the following in `vars/main.yml`
445450

446451
```yaml
447452
# The TPM Storage Root Key(SRK) Password to be used if TPM is already owned
448-
tpm_owner_secret: <tpm_secret>
453+
tboot_gz_file: "<binaries_path>/tboot.gz"
454+
tboot_syms_file: "<binaries_path>/tboot-syms"
449455
```
450456
451-
#### GRUB Default option for Booting into MLE
452-
453-
The grub2_default option would vary from OEM to OEM for booting after installing tboot. The grub option to be selected for booting into TBOOT/MLE mode, use `grubby --info <option:0/1...>` to determine which one has no boot menu assigned to it during runtime in the playbook as below. Default is 3.
457+
#### TPM is already owned
454458
455-
> **NOTE:** This is not required in case of UEFI Secure boot mode
459+
If the Trusted Platform Module(TPM) is already owned, the owner secret(SRK) can be provided directly during runtime in the playbook:
456460
457461
```shell
458462
ansible-playbook <playbook-name> \
459463
--extra-vars setup=<setup var from supported usecases> \
460464
--extra-vars binaries_path=<path where built binaries are copied to> \
461-
--extra-vars grub_default_option=<grub_default_option>
465+
--extra-vars tpm_secret=<tpm owner secret>
462466
```
467+
463468
or
464469

465470
Update the following vars in `vars/main.yml`
466471

467472
```yaml
468-
grub_default_option: "3"
473+
# The TPM Storage Root Key(SRK) Password to be used if TPM is already owned
474+
tpm_owner_secret: <tpm_secret>
469475
```
470476
471477
#### UEFI SecureBoot enabled
@@ -477,11 +483,13 @@ ansible-playbook <playbook-name> \
477483
--extra-vars setup=<setup var from supported usecases> \
478484
--extra-vars binaries_path=<path where built binaries are copied to> \
479485
--extra-vars uefi_secureboot=yes \
480-
-- extra-vars grub_file_path=<uefi mode grub file path>
486+
--extra-vars grub_file_path=<uefi mode grub file path>
481487
```
482488

483489
or
484490

491+
Update the following vars in `vars/main.yml`
492+
485493
```yaml
486494
# UEFI mode or UEFI SecureBoot mode
487495
# ['no' - UEFI mode, 'yes' - UEFI SecureBoot mode]

0 commit comments

Comments
 (0)