-
Notifications
You must be signed in to change notification settings - Fork 555
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
Enable CephFS encryption for CephFS subvolumes #1563
Comments
This issue has been automatically marked as stale because it has not had recent activity. It will be closed in a week if no further activity occurs. Thank you for your contributions. |
This issue has been automatically closed due to inactivity. Please re-open if this still requires investigation. |
Thanks Madhu for the prompt reply and reopening this issue. We are at a point of making critical design choices for our application. We will be going with CepfFS hoping that KMS encryption support will be added soon to the CephFS provisioning and storageclass. regards |
Hello Madhu Any update on this issue regards |
@jtlayton @batrick @vshankar @kotreshhr CephFS already supports fscrypt based encryption? |
No, it's still a work in progress. We're hoping to have it ready to ship for Quincy release. |
https://tracker.ceph.com/issues/46690 is the one, lets get confirmation from Jeff. |
Hello! I looked into how CephFS and FSCrypt could be integrated a bit and believe much of what is already there for RBD could be made to work for CephFS+FSCrypt as well. Biggest exception would be DEK storage. I'd love to get started on a patch and like to hear if there is already something planned? What I have in mind for a first version would be:
|
@irq0 That would be awesome 👍 , please give a try, we can also target this feature's first version in release 3.6. 👍
Do you mean, subvolume or subvolumegroup in this context ?
That looks reasonable.
I would prefer
Yep. Also, please feel free to have a design doc along with first POC implementation, that helps. Please let us know if you need any help on this. |
My WIP branch is here: https://github.com/irq0/ceph-csi/commits/wip/fscrypt. Needs k8s config from my dev env repo https://github.com/irq0/dev-ceph-csi-fscrypt-config plus custom kernel and MDS as the feature isn't merged yet. It is currently more or less a PoC. The main feature, unlocking volumes, is there and stores encrypted DEKs in an xattr.
Subvolume / k8s PV
I'm not sure if there is a good alternative. I don't think there is something akin to the RBD volume metadata for subvolumes, or did I miss anything?
Me too. I started with fscryptctl though, because it is way simpler to use.
Thanks! I'm a bit unsure on how to best test this, as most of the functionality crosses the system border towards the OS. Any ideas? |
Thanks a lot @irq0 for the revert and sharing the gist of what you have been experimenting. We got to discuss about this in 3.6 release triage call yesterday and few thoughts on how to proceed further. It would be good to start with a design doc of this feature and get opinions/suggestions about the approaches from CSI and Ceph Team . It was also told that, we may have to wait for CephFS merge and kernel releases to make sure we are taking right approach towards whats going to land finally as a cephfs encryption solution. With all that, would it be possible to propose a design doc, so that we can discuss further and validate the possibilities of this feature in 3.6. |
Will do. Should be ready mid next week. I'll also want to explore integration possibilities with https://github.com/google/fscrypt some more. google/fscrypt and Ceph-CSI share quite a bit functionality around key management and there is probably some merit to making them compatible somehow. (The PoC code I wrote would require Ceph-CSI key management to unlock; google/fscrypt could allow multiple ways to unlock (e.g PAM, passwords, Ceph-CSI)) There aren't actually any hard CephFS dependencies here, since all the integration would do is key management. The nice thing about fscrypt is that this is independent of the filesystem below (see https://www.kernel.org/doc/html/latest/filesystems/fscrypt.html). (So, what Ceph-CSI would do to unlock fscrypt on CephFS would work on ext4 as well) |
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Considering we have to wait for the dependency support in place and also some discussions on the design has to be concluded, removing this from the release 3.6 tracker. Thanks for the great attempt to take it forward.. we will continue the effort and will try to get this in release 3.7.. |
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: ceph#1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Add proposal document covering key management integration of Ceph CSI and https://github.com/google/fscrypt Updates: #1563 Signed-off-by: Marcel Lauhoff <[email protected]>
Describe the feature you'd like to have
CephFS make use of
fscrypt
based encryption or it will be available soon.Ref# https://lwn.net/Articles/829448/
We have to think about the possibilities of integration for the subvolumes we provision and manage from CSI.
CSI requirements can be summarized to below:
I would like to capture the thoughts or would like to discuss on
fscrypt+ cephfs
implmentation against satisfying above requirements from Ceph CSI side.@batrick @dillaman @vasyl-purchel @ShyamsundarR @JohnStrunk
The text was updated successfully, but these errors were encountered: