Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance VM Security #1767

Merged
merged 4 commits into from
Sep 23, 2024
Merged

Enhance VM Security #1767

merged 4 commits into from
Sep 23, 2024

Conversation

harneshalaka
Copy link
Contributor

@harneshalaka harneshalaka commented Sep 13, 2024

PR creator: Description

Request review of the edited content on Enhancing Virtual Machine Security with AMD SEV-SNP and SUSE Linux Enterprise 15-SP6.

References

https://jira.suse.com/browse/PED-10565

The doc team member merging your PR will take care of backporting to older documents.
When opening a PR, do not set the following check box.

  • all necessary backports are done

Copy link
Contributor

@taroth21 taroth21 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@harneshalaka : Many thanks, well done!

I had a look and have added a few suggestions (mostly about use of entities - maybe pre-empting what Daria would suggest during the final style check anyway).

xml/vm_security.xml Outdated Show resolved Hide resolved
<abstract>
<para>You can enhance the security of your virtual machines with AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP). The AMD SEV-SNP feature isolates virtual machines from the host system and other VMs thereby protecting the data and code. This feature encrypts data and ensures that all changes with the code and data in the VM are detected or tracked. Since this isolates VMs, the other VMs or host machine are not affected with threats.</para>
<para>This section explains the steps to enable and use AMD SEV-SNP on your AMD EPYC server with SUSE Linux Enterprise Server 15-SP6.</para>
</abstract>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
</abstract>
<note>
<title>Technology Preview for &productname;</title>
<para>
This feature is shipped as a Technology Preview in &productname; 15 SP6.
The necessary packages are not part of the default installation or repositories.
</para>
</note>
</abstract>

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's highlight the tech preview in a note and move it up here for more visibility.

Comment on lines +28 to +29
<para>
Support for AMD SEV-SNP is available as a Technology Preview in SUSE Linux Enterprise Server 15-SP6. However, the necessary packages are not part of the default installation or repositories.</para>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<para>
Support for AMD SEV-SNP is available as a Technology Preview in SUSE Linux Enterprise Server 15-SP6. However, the necessary packages are not part of the default installation or repositories.</para>

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suggest to remove here (and move to the abstract as suggested above)

<listitem>
<para>To check whether the module is already enabled, run the command:
</para>
<screen># suseconnect -l</screen>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@harneshalaka : Please replace the # with proper prompts in this file. For this, either use the entity &prompt.root; (or better &prompt.sudo; where possible), according to our style guide.

For examples, see https://github.com/SUSE/doc-sle/blob/main/xml/security_ldap_sssd.xml#L59 or https://github.com/SUSE/doc-sle/blob/main/xml/tuning_perf.xml#L323

<title>Installing Packages and Setting up the Base System</title>

<para>
The confidential compute module provides replacement packages supporting AMD SEV-SNP. To ensure a maximum of compatibility, these packages are based on the code streams from SUSE Linux Enterprise Server.</para>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The confidential compute module provides replacement packages supporting AMD SEV-SNP. To ensure a maximum of compatibility, these packages are based on the code streams from SUSE Linux Enterprise Server.</para>
The confidential compute module provides replacement packages supporting AMD SEV-SNP. To ensure a maximum of compatibility, these packages are based on the code streams from &productname;.</para>

<screen># sudo zypper install coco:kernel-coco coco:qemu coco:libvirt
<!-- TO DO: Replace with the actual command.-->
</screen>
<para>After replacing the packages, you must set up the system with a configuration change to make the AMD SEV-SNP feature ready to use. The IOMMU on the host side must be configured in non-passthrough mode. This is required to prevent peripheral devices from writing to memory which belongs to an encrypted guest and destroy its data integrity. The default IOMMU configuration in SUSE Linux Enterprise Server is <literal>passthrough</literal> mode.</para>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<para>After replacing the packages, you must set up the system with a configuration change to make the AMD SEV-SNP feature ready to use. The IOMMU on the host side must be configured in non-passthrough mode. This is required to prevent peripheral devices from writing to memory which belongs to an encrypted guest and destroy its data integrity. The default IOMMU configuration in SUSE Linux Enterprise Server is <literal>passthrough</literal> mode.</para>
<para>After replacing the packages, you must set up the system with a configuration change to make the AMD SEV-SNP feature ready to use. The IOMMU on the host side must be configured in non-passthrough mode. This is required to prevent peripheral devices from writing to memory which belongs to an encrypted guest and destroy its data integrity. The default IOMMU configuration in &productname; is <literal>passthrough</literal> mode.</para>

<para>After replacing the packages, you must set up the system with a configuration change to make the AMD SEV-SNP feature ready to use. The IOMMU on the host side must be configured in non-passthrough mode. This is required to prevent peripheral devices from writing to memory which belongs to an encrypted guest and destroy its data integrity. The default IOMMU configuration in SUSE Linux Enterprise Server is <literal>passthrough</literal> mode.</para>
</step>
<step>
<para>To disable the IOMMU configuration in SUSE Linux Enterprise Server, open the <filename>/etc/default/grub</filename> file and add <literal>iommu=nopt</literal> to the <varname>GRUB_CMDLINE_LINUX_DEFAULT</varname> variable. </para>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
<para>To disable the IOMMU configuration in SUSE Linux Enterprise Server, open the <filename>/etc/default/grub</filename> file and add <literal>iommu=nopt</literal> to the <varname>GRUB_CMDLINE_LINUX_DEFAULT</varname> variable. </para>
<para>To disable the IOMMU configuration in &productname;, open the <filename>/etc/default/grub</filename> file and add <literal>iommu=nopt</literal> to the <varname>GRUB_CMDLINE_LINUX_DEFAULT</varname> variable. </para>

Copy link
Member

@aginies aginies left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for getting this done so quickly

@harneshalaka harneshalaka merged commit 848842f into main Sep 23, 2024
9 checks passed
<procedure>
<step>
<para>To install the replacement packages, run the command:</para>
<screen># sudo zypper install coco:kernel-coco coco:qemu coco:libvirt
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The repo name is not coco; This needs to be adjusted with the name of the CoCo repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants