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

#675 - Node to Node encryption #655

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

fdobrovolny
Copy link

@fdobrovolny fdobrovolny commented Jul 8, 2024

@OgarOgarovic OgarOgarovic force-pushed the proposal/675-node-to-node-encryption branch from de7ce2f to cbd3fdd Compare August 28, 2024 09:05
@OgarOgarovic OgarOgarovic changed the title WIP: #675 - Node to Node encryption #675 - Node to Node encryption Sep 2, 2024
@matofeder matofeder self-requested a review September 3, 2024 08:25
Copy link
Contributor

@artificial-intelligence artificial-intelligence left a comment

Choose a reason for hiding this comment

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

generally LGTM, but I want to reread it a second time, as it's quite a long document, at the very least there are some spelling mistakes lurking in there imho, but I didn't want to comment on minor errors before actually having read the whole thing first.

Will provide more feedback, hopefully tomorrow.
Thanks for working on this!

Copy link
Member

@matofeder matofeder left a comment

Choose a reason for hiding this comment

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

Overall it is an interesting reading and it looks good from my perspective.

I left just some minor comments there.

| Term | Meaning |
|---|---|
| VM | Virtual machine, alternatively instance, is a virtualized compute resource that functions as a self-contained server for a customer |
| Node | Physical or virtual machine hosting cloud services and compute instances |
Copy link
Member

Choose a reason for hiding this comment

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

IMO the definition of Node as a Physical or virtual machine could be confusing when the layer above mentions the VM term as a virtual machine.

Could we just define VM as a virtual machine and Node as a physical one?

node between different VMs potentially of multiple tenants as this is a
question of tenant isolation, not of networking security, and encryption here
would be possibly a redundant measure. Isolation of VMs is handled by OpenStack
on multiple levels - VLAN/VxLAN/GRE tunneling, routing rules on networking
Copy link
Member

Choose a reason for hiding this comment

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

VLAN/VxLAN/GRE
it would be helpful to spell out the full form of the abbreviations OR
add links where the abbreviations are explained OR
add abbreviations to the Terminology table OR
consider using wording like overlay tunnel protocols instead

### Potential threats in detail

We are assuming that:
* the customer workloads are not executed within SGX or equivalent secure
Copy link
Member

Choose a reason for hiding this comment

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

SGX - explain abbreviation

and Virtual IP tunnels. Each node hosting the VIP will open a tunnel for any
node in the specific network that can properly authenticate. While using
Ansible, the deployment isn't compatible with kolla-ansible[^ka] and would need
porting. Also this project retired as of February 2024.
Copy link
Member

Choose a reason for hiding this comment

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

Also this project retired as of February 2024.
Comment

I would say that the retirement of the project is important information, that should not start with Also, consider to reword this sentence.


In our second proof of concept, we decided to implement support for
openstack-ipsec. The initial step involved creating a new container image
within the kolla[^kl] project specifically for this purpose. However, we
Copy link
Member

Choose a reason for hiding this comment

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

However, we ... something is missing I guess...

key exchange and encryption/decryption of the traffic it communicates with
Libreswan[^ls], specifically with its main daemon `pluto`.

##### Challanges
Copy link
Member

Choose a reason for hiding this comment

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

IMO this is an implementation detail, hence consider removing this section.

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.

4 participants