@@ -253,3 +253,35 @@ that install in `/opt` to operate. However, for maximum immutability the
253
253
best approach is simply to symlink just the parts of the ` /opt ` needed
254
254
into ` /var ` . See the section on ` /opt ` in [ Image building and configuration
255
255
guidance] ( building/guidance.md ) for a more concrete example.
256
+
257
+ ## Increased filesystem integrity with fsverity
258
+
259
+ The bootc project uses [ composefs] ( https://github.com/composefs/composefs )
260
+ by default for the root filesystem (using ostree's support for composefs).
261
+ However, the default configuration as recommended for base images
262
+ uses composefs in a mode that does not require signatures or fsverity.
263
+
264
+ bootc supports with ostree's model of hard requiring fsverity
265
+ for underlying objects. Enabling this also causes bootc
266
+ to error out at install time if the target filesystem does
267
+ not enable fsverity.
268
+
269
+ To enable this, inside your container build update
270
+ ` /usr/lib/ostree/prepare-root.conf ` with:
271
+
272
+ ```
273
+ [composefs]
274
+ enabled = verity
275
+ ```
276
+
277
+ At the current time, there is no default recommended
278
+ mechanism to check the integrity of the upper composefs.
279
+ For more information about this, see
280
+ [ this tracking issue] ( https://github.com/bootc-dev/bootc/issues/1190 ) .
281
+
282
+ ### Enabling fsverity across upgrades
283
+
284
+ At the current time the integration is only for
285
+ installation; there is not yet support for automatically ensuring that
286
+ fsverity is enabled when upgrading from a state with
287
+ ` composefs.enabled = yes ` to ` composefs.enabled = verity ` .
0 commit comments