[LU-9727] Lustre Audit with Changelogs Created: 30/Jun/17 Updated: 15/Dec/21 Resolved: 07/Mar/18 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | Lustre 2.10.0 |
| Fix Version/s: | Lustre 2.11.0, Lustre 2.12.0 |
| Type: | New Feature | Priority: | Minor |
| Reporter: | Sebastien Buisson (Inactive) | Assignee: | Sebastien Buisson (Inactive) |
| Resolution: | Fixed | Votes: | 1 |
| Labels: | feature, patch, sec | ||
| Attachments: |
|
||||||||||||||||||||||||||||||||||||||||
| Issue Links: |
|
||||||||||||||||||||||||||||||||||||||||
| Rank (Obsolete): | 9223372036854775807 | ||||||||||||||||||||||||||||||||||||||||
| Description |
|
Hi, As Lustre Changelogs are a centralized mechanism reporting activity on the file system, we would like to use it as a basis for an audit facility for Lustre. The aim is to be able to track all accesses to files residing on Lustre, so that they can be recorded and looked up later for auditing purposes. Changelogs cannot be used as-is to achieve auditing, because of the following limitations we have identified so far: Further comments on limitations: (b) and (c) We do understand that it would have a performance cost to record OPEN and GEXATTR operations, as it would mean generating a write in the Changelogs for a read operation. Similarly for a CLOSE when a file is opened read-only. We will have to exclude OPEN and GETXATTR from the default Changelogs mask, and potentially create a dedicated changelogs entry type for the 'close on read-only' case, excluded by default. Moreover, we will evaluate the performance cost when these operations are recorded. (d) Having all access attempts recorded will definitely increase MDS/MDT load, so we should examine carefully the performance impact of doing this. We would warn users about how much they would suffer by recording all access attempts. I will feed this ticket by pushing patches to address the various limitations identified here (and possibly others to come). Sebastien. |
| Comments |
| Comment by Andreas Dilger [ 30/Jun/17 ] |
|
Sebastien, thanks for filing the ticket. Some comments on the various points:
|
| Comment by Sebastien Buisson (Inactive) [ 03/Jul/17 ] |
|
Hi Andreas, Thank you very much for your insight and your advice, this is very useful. I am in a preliminary stage, so I will be able to take your remarks into account for sure. Thanks, |
| Comment by Gerrit Updater [ 04/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/27927 |
| Comment by Gerrit Updater [ 04/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/27929 |
| Comment by Gerrit Updater [ 14/Jul/17 ] |
|
Matthew S (matthew.sanderson@anu.edu.au) uploaded a new patch: https://review.whamcloud.com/28045 |
| Comment by Gerrit Updater [ 19/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28114 |
| Comment by Sebastien Buisson (Inactive) [ 21/Jul/17 ] |
|
Hi Andreas, > it should optionally be possible to record the client NID along with the process UID/GID. That won't increase the I have been looking into this, but I could not figure out how to retrieve the client's NID at the MDD layer level. Or should I just extend the 'struct lu_ucred' to add the client's NID information? Unless it is already in the environment (struct lu_env), but I was not able to find it. Thanks, |
| Comment by Andreas Dilger [ 24/Jul/17 ] |
|
See for example https://review.whamcloud.com/27908 which is checking NIDs in the OST callpath to determine if they are local or remote. |
| Comment by Gerrit Updater [ 26/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28213 |
| Comment by Gerrit Updater [ 26/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28214 |
| Comment by Gerrit Updater [ 27/Jul/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28251 |
| Comment by Gerrit Updater [ 01/Aug/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28299 |
| Comment by Gerrit Updater [ 02/Aug/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28313 |
| Comment by Gerrit Updater [ 02/Aug/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/28314 |
| Comment by Peter Jones [ 18/Oct/17 ] |
|
Sebastien Are you able to share details about how you have validated the correct operation of this functionality? Peter |
| Comment by Gerrit Updater [ 29/Nov/17 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/30315 |
| Comment by Gerrit Updater [ 01/Dec/17 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28045/ |
| Comment by Gerrit Updater [ 11/Dec/17 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28114/ |
| Comment by Gerrit Updater [ 19/Jan/18 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/30943 |
| Comment by Gerrit Updater [ 22/Jan/18 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/30970 |
| Comment by Gerrit Updater [ 23/Jan/18 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/30985 |
| Comment by Olaf Weber [ 26/Jan/18 ] |
|
I just notices that the cr_prev field in changelog_rec is not used. Not used as in never set in the kernel. In principle this means we could drop the changelog_ext_extra_flags extension and use that field (renamed) instead. Same as now the CLF_EXTRA_FLAGS flag would indicate that the contents of the field are valid and can be interpreted. It does appear we cannot assume the field is zeroed. (Added) If we want to make this change it should be before a Lustre version with CLF_EXTRA_FLAGS in it ships. |
| Comment by Gerrit Updater [ 06/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28213/ |
| Comment by Gerrit Updater [ 06/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28214/ |
| Comment by Gerrit Updater [ 06/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/27929/ |
| Comment by Gerrit Updater [ 06/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28313/ |
| Comment by Gerrit Updater [ 14/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28251/ |
| Comment by Gerrit Updater [ 14/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28299/ |
| Comment by Gerrit Updater [ 14/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28812/ |
| Comment by Gerrit Updater [ 14/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/30315/ |
| Comment by Gerrit Updater [ 14/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/30970/ |
| Comment by Gerrit Updater [ 27/Feb/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/28314/ |
| Comment by Quentin Bouget [ 28/Feb/18 ] |
|
Hi Sebastien, Could you have a look at Quentin |
| Comment by Sebastien Buisson (Inactive) [ 28/Feb/18 ] |
|
Hi Quentin, I will try to have a look, thanks for letting me know. Cheers. |
| Comment by Gerrit Updater [ 28/Feb/18 ] |
|
Sebastien Buisson (sbuisson@ddn.com) uploaded a new patch: https://review.whamcloud.com/31456 |
| Comment by Gerrit Updater [ 06/Mar/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/31456/ |
| Comment by Peter Jones [ 07/Mar/18 ] |
|
Functionality has landed for 2.11. Let's track the landing of the tests under a new ticket. This can still land after code freeze and before GA if it is ready in time |
| Comment by Gerrit Updater [ 09/May/18 ] |
|
Quentin Bouget (quentin.bouget@cea.fr) uploaded a new patch: https://review.whamcloud.com/32335 |
| Comment by Gerrit Updater [ 29/May/18 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch https://review.whamcloud.com/32335/ |